func KeysInt16Int8(m map[int16]int8) []int16 {
	keys := make([]int16, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
KeysInt16Int8 returns a slice of map's keys
package fp
func KeysInt(m map[int]int) []int {
	keys := make([]int, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysIntInt64(m map[int]int64) []int {
	keys := make([]int, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysIntInt32(m map[int]int32) []int {
	keys := make([]int, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysIntInt16(m map[int]int16) []int {
	keys := make([]int, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysIntInt8(m map[int]int8) []int {
	keys := make([]int, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysIntUint(m map[int]uint) []int {
	keys := make([]int, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysIntUint64(m map[int]uint64) []int {
	keys := make([]int, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysIntUint32(m map[int]uint32) []int {
	keys := make([]int, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysIntUint16(m map[int]uint16) []int {
	keys := make([]int, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysIntUint8(m map[int]uint8) []int {
	keys := make([]int, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysIntStr(m map[int]string) []int {
	keys := make([]int, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysIntBool(m map[int]bool) []int {
	keys := make([]int, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysIntFloat32(m map[int]float32) []int {
	keys := make([]int, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysIntFloat64(m map[int]float64) []int {
	keys := make([]int, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt64Int(m map[int64]int) []int64 {
	keys := make([]int64, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt64(m map[int64]int64) []int64 {
	keys := make([]int64, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt64Int32(m map[int64]int32) []int64 {
	keys := make([]int64, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt64Int16(m map[int64]int16) []int64 {
	keys := make([]int64, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt64Int8(m map[int64]int8) []int64 {
	keys := make([]int64, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt64Uint(m map[int64]uint) []int64 {
	keys := make([]int64, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt64Uint64(m map[int64]uint64) []int64 {
	keys := make([]int64, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt64Uint32(m map[int64]uint32) []int64 {
	keys := make([]int64, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt64Uint16(m map[int64]uint16) []int64 {
	keys := make([]int64, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt64Uint8(m map[int64]uint8) []int64 {
	keys := make([]int64, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt64Str(m map[int64]string) []int64 {
	keys := make([]int64, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt64Bool(m map[int64]bool) []int64 {
	keys := make([]int64, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt64Float32(m map[int64]float32) []int64 {
	keys := make([]int64, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt64Float64(m map[int64]float64) []int64 {
	keys := make([]int64, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt32Int(m map[int32]int) []int32 {
	keys := make([]int32, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt32Int64(m map[int32]int64) []int32 {
	keys := make([]int32, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt32(m map[int32]int32) []int32 {
	keys := make([]int32, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt32Int16(m map[int32]int16) []int32 {
	keys := make([]int32, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt32Int8(m map[int32]int8) []int32 {
	keys := make([]int32, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt32Uint(m map[int32]uint) []int32 {
	keys := make([]int32, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt32Uint64(m map[int32]uint64) []int32 {
	keys := make([]int32, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt32Uint32(m map[int32]uint32) []int32 {
	keys := make([]int32, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt32Uint16(m map[int32]uint16) []int32 {
	keys := make([]int32, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt32Uint8(m map[int32]uint8) []int32 {
	keys := make([]int32, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt32Str(m map[int32]string) []int32 {
	keys := make([]int32, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt32Bool(m map[int32]bool) []int32 {
	keys := make([]int32, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt32Float32(m map[int32]float32) []int32 {
	keys := make([]int32, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt32Float64(m map[int32]float64) []int32 {
	keys := make([]int32, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt16Int(m map[int16]int) []int16 {
	keys := make([]int16, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt16Int64(m map[int16]int64) []int16 {
	keys := make([]int16, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt16Int32(m map[int16]int32) []int16 {
	keys := make([]int16, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}
func KeysInt16(m map[int16]int16) []int16 {
	keys := make([]int16, len(m))
	i := 0
	for k := range m {
		keys[i] = k
		i++
	}
	return keys
}