val input3:(b: B.buffer UInt8.t {B.length b = 32 /\ B.recallable b})
let input3: (b: B.buffer UInt8.t { B.length b = 32 /\ B.recallable b }) =
  [@inline_let] let l = [ 0x66uy; 0x3cuy; 0xeauy; 0x19uy; 0x0fuy; 0xfbuy; 0x83uy; 0xd8uy; 0x95uy; 0x93uy; 0xf3uy; 0xf4uy; 0x76uy; 0xb6uy; 0xbcuy; 0x24uy; 0xd7uy; 0xe6uy; 0x79uy; 0x10uy; 0x7euy; 0xa2uy; 0x6auy; 0xdbuy; 0x8cuy; 0xafuy; 0x66uy; 0x52uy; 0xd0uy; 0x65uy; 0x61uy; 0x36uy; ] in
  assert_norm (List.Tot.length l = 32);
  B.gcmalloc_of_list HyperStack.root l
val input3:(b: B.buffer UInt8.t {B.length b = 32 /\ B.recallable b})
let input3:(b: B.buffer UInt8.t {B.length b = 32 /\ B.recallable b}) =
[@@ inline_let ]let l =
  [
    0x66uy; 0x3cuy; 0xeauy; 0x19uy; 0x0fuy; 0xfbuy; 0x83uy; 0xd8uy; 0x95uy; 0x93uy; 0xf3uy; 0xf4uy;
    0x76uy; 0xb6uy; 0xbcuy; 0x24uy; 0xd7uy; 0xe6uy; 0x79uy; 0x10uy; 0x7euy; 0xa2uy; 0x6auy; 0xdbuy;
    0x8cuy; 0xafuy; 0x66uy; 0x52uy; 0xd0uy; 0x65uy; 0x61uy; 0x36uy
  ]
in
assert_norm (List.Tot.length l = 32);
B.gcmalloc_of_list HyperStack.root l
Test.Vectors.Poly1305.fst.checked
prims.fst.checked LowStar.Buffer.fst.checked FStar.UInt8.fsti.checked FStar.UInt32.fsti.checked FStar.Pervasives.fsti.checked FStar.List.Tot.fst.checked FStar.HyperStack.fst.checked
Test.Vectors.Poly1305.fst
LowStar.Buffer.gcmalloc_of_list FStar.UInt8.t FStar.Monotonic.HyperHeap.root LowStar.Monotonic.Buffer.mbuffer LowStar.Buffer.trivial_preorder Prims.l_and Prims.eq2 Prims.nat LowStar.Monotonic.Buffer.length FStar.Pervasives.normalize_term FStar.List.Tot.Base.length Prims.b2t Prims.op_Negation LowStar.Monotonic.Buffer.g_is_null FStar.Monotonic.HyperHeap.rid LowStar.Monotonic.Buffer.frameOf LowStar.Monotonic.Buffer.recallable Prims.unit FStar.Pervasives.assert_norm Prims.op_Equality Prims.int LowStar.Buffer.buffer Prims.list Prims.Cons FStar.UInt8.__uint_to_t Prims.Nil
module Test.Vectors.Poly1305

module B = LowStar.Buffer

#set-options "--max_fuel 0 --max_ifuel 0"

let input0: (b: B.buffer UInt8.t { B.length b = 34 /\ B.recallable b }) =
  [@inline_let] let l = [ 0x43uy; 0x72uy; 0x79uy; 0x70uy; 0x74uy; 0x6fuy; 0x67uy; 0x72uy; 0x61uy; 0x70uy; 0x68uy; 0x69uy; 0x63uy; 0x20uy; 0x46uy; 0x6fuy; 0x72uy; 0x75uy; 0x6duy; 0x20uy; 0x52uy; 0x65uy; 0x73uy; 0x65uy; 0x61uy; 0x72uy; 0x63uy; 0x68uy; 0x20uy; 0x47uy; 0x72uy; 0x6fuy; 0x75uy; 0x70uy; ] in
  assert_norm (List.Tot.length l = 34);
  B.gcmalloc_of_list HyperStack.root l

inline_for_extraction let input0_len: (x:UInt32.t { UInt32.v x = B.length input0 }) =
  34ul

let key0: (b: B.buffer UInt8.t { B.length b = 32 /\ B.recallable b }) =
  [@inline_let] let l = [ 0x85uy; 0xd6uy; 0xbeuy; 0x78uy; 0x57uy; 0x55uy; 0x6duy; 0x33uy; 0x7fuy; 0x44uy; 0x52uy; 0xfeuy; 0x42uy; 0xd5uy; 0x06uy; 0xa8uy; 0x01uy; 0x03uy; 0x80uy; 0x8auy; 0xfbuy; 0x0duy; 0xb2uy; 0xfduy; 0x4auy; 0xbfuy; 0xf6uy; 0xafuy; 0x41uy; 0x49uy; 0xf5uy; 0x1buy; ] in
  assert_norm (List.Tot.length l = 32);
  B.gcmalloc_of_list HyperStack.root l

inline_for_extraction let key0_len: (x:UInt32.t { UInt32.v x = B.length key0 }) =
  32ul

let tag0: (b: B.buffer UInt8.t { B.length b = 16 /\ B.recallable b }) =
  [@inline_let] let l = [ 0xa8uy; 0x06uy; 0x1duy; 0xc1uy; 0x30uy; 0x51uy; 0x36uy; 0xc6uy; 0xc2uy; 0x2buy; 0x8buy; 0xafuy; 0x0cuy; 0x01uy; 0x27uy; 0xa9uy; ] in
  assert_norm (List.Tot.length l = 16);
  B.gcmalloc_of_list HyperStack.root l

inline_for_extraction let tag0_len: (x:UInt32.t { UInt32.v x = B.length tag0 }) =
  16ul

let input1: (b: B.buffer UInt8.t { B.length b = 2 /\ B.recallable b }) =
  [@inline_let] let l = [ 0xf3uy; 0xf6uy; ] in
  assert_norm (List.Tot.length l = 2);
  B.gcmalloc_of_list HyperStack.root l

inline_for_extraction let input1_len: (x:UInt32.t { UInt32.v x = B.length input1 }) =
  2ul

let key1: (b: B.buffer UInt8.t { B.length b = 32 /\ B.recallable b }) =
  [@inline_let] let l = [ 0x85uy; 0x1fuy; 0xc4uy; 0x0cuy; 0x34uy; 0x67uy; 0xacuy; 0x0buy; 0xe0uy; 0x5cuy; 0xc2uy; 0x04uy; 0x04uy; 0xf3uy; 0xf7uy; 0x00uy; 0x58uy; 0x0buy; 0x3buy; 0x0fuy; 0x94uy; 0x47uy; 0xbbuy; 0x1euy; 0x69uy; 0xd0uy; 0x95uy; 0xb5uy; 0x92uy; 0x8buy; 0x6duy; 0xbcuy; ] in
  assert_norm (List.Tot.length l = 32);
  B.gcmalloc_of_list HyperStack.root l

inline_for_extraction let key1_len: (x:UInt32.t { UInt32.v x = B.length key1 }) =
  32ul

let tag1: (b: B.buffer UInt8.t { B.length b = 16 /\ B.recallable b }) =
  [@inline_let] let l = [ 0xf4uy; 0xc6uy; 0x33uy; 0xc3uy; 0x04uy; 0x4fuy; 0xc1uy; 0x45uy; 0xf8uy; 0x4fuy; 0x33uy; 0x5cuy; 0xb8uy; 0x19uy; 0x53uy; 0xdeuy; ] in
  assert_norm (List.Tot.length l = 16);
  B.gcmalloc_of_list HyperStack.root l

inline_for_extraction let tag1_len: (x:UInt32.t { UInt32.v x = B.length tag1 }) =
  16ul

let input2: (b: B.buffer UInt8.t { B.length b = 0 /\ B.recallable b }) =
  [@inline_let] let l = [ ] in
  assert_norm (List.Tot.length l = 0);
  B.gcmalloc_of_list HyperStack.root l

inline_for_extraction let input2_len: (x:UInt32.t { UInt32.v x = B.length input2 }) =
  0ul

let key2: (b: B.buffer UInt8.t { B.length b = 32 /\ B.recallable b }) =
  [@inline_let] let l = [ 0xa0uy; 0xf3uy; 0x08uy; 0x00uy; 0x00uy; 0xf4uy; 0x64uy; 0x00uy; 0xd0uy; 0xc7uy; 0xe9uy; 0x07uy; 0x6cuy; 0x83uy; 0x44uy; 0x03uy; 0xdduy; 0x3fuy; 0xabuy; 0x22uy; 0x51uy; 0xf1uy; 0x1auy; 0xc7uy; 0x59uy; 0xf0uy; 0x88uy; 0x71uy; 0x29uy; 0xccuy; 0x2euy; 0xe7uy; ] in
  assert_norm (List.Tot.length l = 32);
  B.gcmalloc_of_list HyperStack.root l

inline_for_extraction let key2_len: (x:UInt32.t { UInt32.v x = B.length key2 }) =
  32ul

let tag2: (b: B.buffer UInt8.t { B.length b = 16 /\ B.recallable b }) =
  [@inline_let] let l = [ 0xdduy; 0x3fuy; 0xabuy; 0x22uy; 0x51uy; 0xf1uy; 0x1auy; 0xc7uy; 0x59uy; 0xf0uy; 0x88uy; 0x71uy; 0x29uy; 0xccuy; 0x2euy; 0xe7uy; ] in
  assert_norm (List.Tot.length l = 16);
  B.gcmalloc_of_list HyperStack.root l

inline_for_extraction let tag2_len: (x:UInt32.t { UInt32.v x = B.length tag2 }) =
  16ul
val input3:(b: B.buffer UInt8.t {B.length b = 32 /\ B.recallable b})
b:
LowStar.Buffer.buffer FStar.UInt8.t
  {LowStar.Monotonic.Buffer.length b = 32 /\ LowStar.Monotonic.Buffer.recallable b}