func DropWhileInt64(f func(int64) bool, list []int64) []int64 {
	if f == nil {
		return []int64{}
	}
	var newList []int64
	for i, v := range list {
		if !f(v) {
			listLen := len(list)
			newList = make([]int64, listLen-i)
			j := 0
			for i < listLen {
				newList[j] = list[i]
				i++
				j++
			}
			return newList
		}
	}
	return newList
}
DropWhileInt64 drops the items from the list as long as condition satisfies.

Takes two inputs
1. Function: takes one input and returns boolean
2. list

Returns:
New List.
Empty list if either one of arguments or both of them are nil

Example: Drops even number. Returns the remaining items once odd number is found in the list.
fp.DropWhileInt64(isEven, []int64{4, 2, 3, 4, 5}) // Returns [3, 4, 5]

func isEven(num int64) bool {
return num%2 == 0
}
package fp
func DropWhileInt(f func(int) bool, list []int) []int {
	if f == nil {
		return []int{}
	}
	var newList []int
	for i, v := range list {
		if !f(v) {
			listLen := len(list)
			newList = make([]int, listLen-i)
			j := 0
			for i < listLen {
				newList[j] = list[i]
				i++
				j++
			}
			return newList
		}
	}
	return newList
}