def get_factorial(self, n):
     print('ExampleService.get_factorial has been called with request: {0}'.
           format(n))
     if n < 2:
         return Promise.create_successful_promise(1)
     return self.example_service_client.get_factorial(n - 1).then(
         lambda fac_n_1: fac_n_1 * n)
 def get_fibonacci(self, n):
     # print('ExampleService.get_fibonacci has been called with request: {0}'.format(n))
     if n < 2:
         return Promise.create_successful_promise(n)
     return Promise.combine(
         self.example_service_client.get_fibonacci(n - 2),
         self.example_service_client.get_fibonacci(n - 1),
         lambda fib_n_2, fib_n_1: fib_n_1 + fib_n_2)