package mathutils type SignedNumber interface { ~int | ~int8 | ~int16 | ~int32 | ~int64 | ~float32 | ~float64 } func Abs[T SignedNumber](num T) T { if num > 0 { return num } else { return num * -1 } }