program main
  fn base() -> u64
    u64 4294967296
  fn adjust(value: u64, delta: u64) -> u64
    binary +
      var value
      var delta
  fn doubled(value: u64) -> u64
    binary *
      var value
      u64 2
  fn local_total() -> u64
    local let offset: u64
      u64 19
    call adjust
      binary /
        call doubled
          call base
        u64 2
      var offset
  fn high_enough(value: u64) -> bool
    if
      binary >
        var value
        u64 4294967300
      binary <
        var value
        u64 4294967320
      bool false
  fn exact_u64() -> bool
    binary =
      call local_total
      u64 4294967315
  fn main() -> i32
    call std.io.print_u64
      call local_total
    if
      call high_enough
        call local_total
      int 0
      int 1
  test "u64 arithmetic returns exact fixture value"
    call exact_u64
  test "u64 comparison works in predicates"
    call high_enough
      call local_total
  test "u64 division and ordering"
    if
      binary >=
        binary /
          call local_total
          u64 5
        u64 858993463
      binary <=
        binary /
          call local_total
          u64 5
        u64 858993463
      bool false
