byteOrdering :: little-endian;
format struct SomeFile{
magicnumber :: ascii("BIN");
tablesize :: short;
offsettable :: Chunk[tablesize];
skip data :: byte[tablesize * sizeof(Chunk)];
age :: Age;
author :: byte[] until "\0" or EOF;
}
rel_offset Chunk :: short{
somedata :: byte[8];
}
enum Age :: ubyte{
local diff :: int;
[0..18]: Underage [diff = value, warning("This age is not allowed") ];
[19..65]: WorkerAge [diff = value-19];
[66..255]: Senior [diff = value-66];
}