1234567891011121314151617181920212223242526272829303132333435363738394041424344454647includeBin_shape(* new base shapes *)letbin_shape_unit=basetype(Uuid.of_string"unit")[]letbin_shape_bool=basetype(Uuid.of_string"bool")[]letbin_shape_string=basetype(Uuid.of_string"string")[]letbin_shape_bytes=basetype(Uuid.of_string"bytes")[]letbin_shape_char=basetype(Uuid.of_string"char")[]letbin_shape_float=basetype(Uuid.of_string"float")[]letbin_shape_int=basetype(Uuid.of_string"int")[]letbin_shape_int32=basetype(Uuid.of_string"int32")[]letbin_shape_int63=basetype(Uuid.of_string"int63")[]letbin_shape_int64=basetype(Uuid.of_string"int64")[]letbin_shape_nativeint=basetype(Uuid.of_string"nativeint")[]letbin_shape_nat0=basetype(Uuid.of_string"nat0")[]letbin_shape_digest=basetype(Uuid.of_string"digest")[]letbin_shape_float32_vec=basetype(Uuid.of_string"float32_vec")[]letbin_shape_float64_vec=basetype(Uuid.of_string"float64_vec")[]letbin_shape_vec=basetype(Uuid.of_string"vec")[]letbin_shape_float32_mat=basetype(Uuid.of_string"float32_mat")[]letbin_shape_float64_mat=basetype(Uuid.of_string"float64_mat")[]letbin_shape_mat=basetype(Uuid.of_string"mat")[]letbin_shape_bigstring=basetype(Uuid.of_string"bigstring")[]letbin_shape_floatarray=basetype(Uuid.of_string"floatarray")[]letbin_shape_variant_int=basetype(Uuid.of_string"variant_int")[]letbin_shape_int_8bit=basetype(Uuid.of_string"int_8bit")[]letbin_shape_int_16bit=basetype(Uuid.of_string"int_16bit")[]letbin_shape_int_32bit=basetype(Uuid.of_string"int_32bit")[]letbin_shape_int_64bit=basetype(Uuid.of_string"int_64bit")[]letbin_shape_int64_bits=basetype(Uuid.of_string"int64_bits")[]letbin_shape_network16_int=basetype(Uuid.of_string"network16_int")[]letbin_shape_network32_int=basetype(Uuid.of_string"network32_int")[]letbin_shape_network32_int32=basetype(Uuid.of_string"network32_int32")[]letbin_shape_network64_int=basetype(Uuid.of_string"network64_int")[]letbin_shape_network64_int64=basetype(Uuid.of_string"network64_int64")[](* new shape constructors *)letbin_shape_refx=basetype(Uuid.of_string"ref")[x]letbin_shape_optionx=basetype(Uuid.of_string"option")[x]letbin_shape_listx=basetype(Uuid.of_string"list")[x]letbin_shape_arrayx=basetype(Uuid.of_string"array")[x]letbin_shape_hashtblxy=basetype(Uuid.of_string"hashtbl")[x;y](* shape-constructor aliases *)letbin_shape_lazyx=xletbin_shape_pairxy=tuple[x;y]letbin_shape_triplexyz=tuple[x;y;z]