func BytesFilter(f func(byte) bool, data []byte) []byte {
	result := make([]byte, 0, 0)
	for _, element := range data {
		if f(element) {
			result = append(result, element)
		}
	}
	return result
}
func BytesFilter(f func(byte) bool, data []byte) []byte {
	result := make([]byte, 0, 0)
	for _, element := range data {
		if f(element) {
			result = append(result, element)
		}
	}
	return result
}
// BytesFilter filters out all bytes where the function does not return true.