def versioned
import stelliferous@0.0.2.0/tensor_file.bend as TensorFileimport Base
242# Version 1 has a two-byte header length; later versions have four bytes.
243def versioned(major: U32,+bytes: List<&2,U32>) -> Maybe<&2,Header>:
244 match major:
245 case 1: region(List.drop(&2,U32,bytes,10n),U32.to_nat((at(bytes,8n) + at(bytes,9n) * 256 : U32)))
246 case _: region(List.drop(&2,U32,bytes,12n),U32.to_nat((at(bytes,8n) + at(bytes,9n) * 256 + at(bytes,10n) * 65536 + at(bytes,11n) * 16777216 : U32)))