code: func (c *crontime) nextValidMonth(baseTime time.Time) {
  	for _, mon := range c.month {
  		if mon >= int(c.calculatedTime.Month()) {
  			//log.Print("Inside Month", mon, c.calculatedTime)
  			c.calculatedTime = setMonth(c.calculatedTime, mon)
  			//log.Println(" :: and out", c.calculatedTime)
  			return
  		}
  	}
  	// If no result was found try it again in the following year
  	c.calculatedTime = c.calculatedTime.AddDate(1, 0, 0)
  	c.calculatedTime = setMonth(c.calculatedTime, c.month[0])
  	//log.Println("Cronbee: Month", c.calculatedTime, baseTime, c.month)
  	c.nextValidMonth(baseTime)
  }
docs: // Calculates the next valid Month based upon the previous results.