func FilterMapInt64Uint32Ptr(fFilter func(*int64) bool, fMap func(*int64) *uint32, list []*int64) []*uint32 {
	if fFilter == nil || fMap == nil {
		return []*uint32{}
	}
	var newList []*uint32
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
FilterMapInt64Uint32Ptr filters given list, then apply function(2nd argument) on each item in the list and returns a new list
Takes 3 inputs
1. Function: takes one input type - *int64 and returns true/false.
2. Function: takes *int64 as argument and returns *uint32
3. List of type *[]int64

Returns:
New List of type *uint32
Empty list if all there parameters are nil or either of parameter is nil
package fp
func FilterMapIntInt64Ptr(fFilter func(*int) bool, fMap func(*int) *int64, list []*int) []*int64 {
	if fFilter == nil || fMap == nil {
		return []*int64{}
	}
	var newList []*int64
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapIntInt32Ptr(fFilter func(*int) bool, fMap func(*int) *int32, list []*int) []*int32 {
	if fFilter == nil || fMap == nil {
		return []*int32{}
	}
	var newList []*int32
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapIntInt16Ptr(fFilter func(*int) bool, fMap func(*int) *int16, list []*int) []*int16 {
	if fFilter == nil || fMap == nil {
		return []*int16{}
	}
	var newList []*int16
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapIntInt8Ptr(fFilter func(*int) bool, fMap func(*int) *int8, list []*int) []*int8 {
	if fFilter == nil || fMap == nil {
		return []*int8{}
	}
	var newList []*int8
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapIntUintPtr(fFilter func(*int) bool, fMap func(*int) *uint, list []*int) []*uint {
	if fFilter == nil || fMap == nil {
		return []*uint{}
	}
	var newList []*uint
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapIntUint64Ptr(fFilter func(*int) bool, fMap func(*int) *uint64, list []*int) []*uint64 {
	if fFilter == nil || fMap == nil {
		return []*uint64{}
	}
	var newList []*uint64
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapIntUint32Ptr(fFilter func(*int) bool, fMap func(*int) *uint32, list []*int) []*uint32 {
	if fFilter == nil || fMap == nil {
		return []*uint32{}
	}
	var newList []*uint32
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapIntUint16Ptr(fFilter func(*int) bool, fMap func(*int) *uint16, list []*int) []*uint16 {
	if fFilter == nil || fMap == nil {
		return []*uint16{}
	}
	var newList []*uint16
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapIntUint8Ptr(fFilter func(*int) bool, fMap func(*int) *uint8, list []*int) []*uint8 {
	if fFilter == nil || fMap == nil {
		return []*uint8{}
	}
	var newList []*uint8
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapIntStrPtr(fFilter func(*int) bool, fMap func(*int) *string, list []*int) []*string {
	if fFilter == nil || fMap == nil {
		return []*string{}
	}
	var newList []*string
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapIntBoolPtr(fFilter func(*int) bool, fMap func(*int) *bool, list []*int) []*bool {
	if fFilter == nil || fMap == nil {
		return []*bool{}
	}
	var newList []*bool
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapIntFloat32Ptr(fFilter func(*int) bool, fMap func(*int) *float32, list []*int) []*float32 {
	if fFilter == nil || fMap == nil {
		return []*float32{}
	}
	var newList []*float32
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapIntFloat64Ptr(fFilter func(*int) bool, fMap func(*int) *float64, list []*int) []*float64 {
	if fFilter == nil || fMap == nil {
		return []*float64{}
	}
	var newList []*float64
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapInt64IntPtr(fFilter func(*int64) bool, fMap func(*int64) *int, list []*int64) []*int {
	if fFilter == nil || fMap == nil {
		return []*int{}
	}
	var newList []*int
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapInt64Int32Ptr(fFilter func(*int64) bool, fMap func(*int64) *int32, list []*int64) []*int32 {
	if fFilter == nil || fMap == nil {
		return []*int32{}
	}
	var newList []*int32
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapInt64Int16Ptr(fFilter func(*int64) bool, fMap func(*int64) *int16, list []*int64) []*int16 {
	if fFilter == nil || fMap == nil {
		return []*int16{}
	}
	var newList []*int16
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapInt64Int8Ptr(fFilter func(*int64) bool, fMap func(*int64) *int8, list []*int64) []*int8 {
	if fFilter == nil || fMap == nil {
		return []*int8{}
	}
	var newList []*int8
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapInt64UintPtr(fFilter func(*int64) bool, fMap func(*int64) *uint, list []*int64) []*uint {
	if fFilter == nil || fMap == nil {
		return []*uint{}
	}
	var newList []*uint
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}
func FilterMapInt64Uint64Ptr(fFilter func(*int64) bool, fMap func(*int64) *uint64, list []*int64) []*uint64 {
	if fFilter == nil || fMap == nil {
		return []*uint64{}
	}
	var newList []*uint64
	for _, v := range list {
		if fFilter(v) {
			newList = append(newList, fMap(v))
		}
	}
	return newList
}