code: def period(self, unit, size = 1):
          
          assert unit in (DAY, MONTH, YEAR), 'Invalid unit: {} of type {}'.format(unit, type(unit))
          assert isinstance(size, int) and size >= 1, 'Invalid size: {} of type {}'.format(size, type(size))
          return Period((unit, self, size))
docs: Create a new period starting at instant.
  
          >>> instant(2014).period('month')
          Period(('month', Instant((2014, 1, 1)), 1))
          >>> instant('2014-2').period('year', 2)
          Period(('year', Instant((2014, 2, 1)), 2))
          >>> instant('2014-2-3').period('day', size = 2)
          Period(('day', Instant((2014, 2, 3)), 2))