docs: def json_http_resp(handler):
      """
  Automatically serialize return value to the body of a successfull HTTP
  response.
  
  Returns a 500 error if the response cannot be serialized
  
  Usage::
  
      >>> from lambda_decorators import json_http_resp
      >>> @json_http_resp
      ... def handler(event, context):
      ...     return {'hello': 'world'}
      >>> handler({}, object())
      {'statusCode': 200, 'body': '{"hello": "world"}'}
  
  in this example, the decorated handler returns:
  
  .. code:: python
  
      {'statusCode': 200, 'body': '{"hello": "world"}'}
      """
      @wraps(handler)
      def wrapper(event, context):
          response = handler(event, context)
          try:
              body = json.dumps(response)
          except Exception as exception:
              return {'statusCode': 500, 'body': str(exception)}
          return {'statusCode': 200, 'body': body}
  
      return wrapper