code: func CombineInts(ints []int) int {
  	var total int
  	for len(ints) > 0 {
  		if len(ints) == 1 || ints[0] >= 1000 {
  			last := ints[len(ints)-1]
  			total += last
  			ints = ints[0 : len(ints)-1] //pop it
  		} else {
  			if ints[1] < 1000 {
  				// something went wrong
  				panic("HELP!")
  			}
  			total += ints[0] * ints[1]
  			ints = ints[2:]
  		}
  	}
  	return total
  }
docs: // CombineInts takes a int slice, and tries to make it one integer.
  // It works by taking advantage of english - anything more than 1000 has a repeated pattern
  // e.g.
  // 		one hundred and fifty thousand two hundred and two
  // there are 2 repeated patterns (one hundred and fifty) and  (two hundred and two)
  //
  // This allows us to repeatedly combine by addition or multiplication until there is one left