docs: def from_json(cls, data):
          """Creat datetime from a dictionary.
  
          Args:
              data: {
                  'month': A value for month between 1-12. (Defualt: 1)
                  'day': A value for day between 1-31. (Defualt: 1)
                  'hour': A value for hour between 0-23. (Defualt: 0)
                  'minute': A value for month between 0-59. (Defualt: 0)
              }
          """
          if 'month' not in data:
              data['month'] = 1
  
          if 'day' not in data:
              data['day'] = 1
  
          if 'hour' not in data:
              data['hour'] = 0
  
          if 'minute' not in data:
              data['minute'] = 0
  
          if 'year' not in data:
              data['year'] = 2017
  
          leap_year = True if int(data['year']) == 2016 else False
          return cls(data['month'], data['day'], data['hour'], data['minute'], leap_year)