sui_getObject

Read API

Return the object information for a specified object

Parameters

KeyRequiredTypeDetail
object_idObjectIDthe ID of the queried object
optionsStringObjectDataOptionsoptions for specifying the content to be returned
"params": [
  "0x225a5eb5c580cb6b6c44ffd60c4d79021e79c5a6cea7eb3e60962ee5f9bc6cb2",
  {
    "showType": true,
    "showOwner": true,
    "showPreviousTransaction": true,
    "showDisplay": false,
    "showContent": true,
    "showBcs": false,
    "showStorageRebate": true
  }
]

Result

SuiObjectResponse : <SuiObjectResponse> - get Object data for the ID in the request.

  • data : <[ObjectData]>
  • error : <[ObjectResponseError]>

Example

Request

curl <your-endpoint> \
    -X POST \
    -H "Content-Type: application/json" \
    -d '
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "sui_getObject",
  "params": [
    "0x225a5eb5c580cb6b6c44ffd60c4d79021e79c5a6cea7eb3e60962ee5f9bc6cb2",
    {
      "showType": true,
      "showOwner": true,
      "showPreviousTransaction": true,
      "showDisplay": false,
      "showContent": true,
      "showBcs": false,
      "showStorageRebate": true
    }
  ]
}
'

Response

{
    "jsonrpc": "2.0",
    "result": {
        "data": {
            "objectId": "0x225a5eb5c580cb6b6c44ffd60c4d79021e79c5a6cea7eb3e60962ee5f9bc6cb2",
            "version": "2",
            "digest": "BVEj1pEyW3BFL1ba3gwvnumnsw72izynwPf4PkDtdFsC",
            "type": "package",
            "owner": "Immutable",
            "previousTransaction": "AXXrKP5jW6F5MwxdtHMFo7yaRr4bthoVDz7hSEdXg6hS",
            "storageRebate": "69988400",
            "content": {
                "dataType": "package",
                "disassembled": {
                    "game_8192": "// Move bytecode v6\nmodule 72f9c76421170b5a797432ba9e1b3b2e2b7cf6faa26eb955396c773af2479e1e.game_8192 {\nuse 72f9c76421170b5a797432ba9e1b3b2e2b7cf6faa26eb955396c773af2479e1e::game_board_8192;\nuse 0000000000000000000000000000000000000000000000000000000000000001::string;\nuse 0000000000000000000000000000000000000000000000000000000000000002::balance;\nuse 0000000000000000000000000000000000000000000000000000000000000002::coin;\nuse 0000000000000000000000000000000000000000000000000000000000000002::display;\nuse 0000000000000000000000000000000000000000000000000000000000000002::event;\nuse 0000000000000000000000000000000000000000000000000000000000000002::object;\nuse 0000000000000000000000000000000000000000000000000000000000000002::package;\nuse 0000000000000000000000000000000000000000000000000000000000000002::pay;\nuse 0000000000000000000000000000000000000000000000000000000000000002::sui;\nuse 0000000000000000000000000000000000000000000000000000000000000002::transfer;\nuse 0000000000000000000000000000000000000000000000000000000000000002::tx_context;\n\n\nstruct GAME_8192 has drop {\n\tdummy_field: bool\n}\nstruct Game8192 has store, key {\n\tid: UID,\n\tgame: u64,\n\tplayer: address,\n\tactive_board: GameBoard8192,\n\tmove_count: u64,\n\tscore: u64,\n\ttop_tile: u64,\n\tgame_over: bool\n}\nstruct GameMove8192 has store {\n\tdirection: u64,\n\tplayer: address\n}\nstruct Game8192Maintainer has key {\n\tid: UID,\n\tmaintainer_address: address,\n\tgame_count: u64,\n\tfee: u64,\n\tbalance: Balance<SUI>\n}\nstruct NewGameEvent8192 has copy, drop {\n\tgame_id: ID,\n\tplayer: address,\n\tscore: u64,\n\tpacked_spaces: u64\n}\nstruct GameMoveEvent8192 has copy, drop {\n\tgame_id: ID,\n\tdirection: u64,\n\tmove_count: u64,\n\tpacked_spaces: u64,\n\tlast_tile: vector<u64>,\n\ttop_tile: u64,\n\tscore: u64,\n\tgame_over: bool\n}\nstruct GameOverEvent8192 has copy, drop {\n\tgame_id: ID,\n\ttop_tile: u64,\n\tscore: u64\n}\n\ninit(Arg0: GAME_8192, Arg1: &mut TxContext) {\nL0:\tloc2: Game8192Maintainer\nL1:\tloc3: Publisher\nL2:\tloc4: vector<String>\nB0:\n\t0: LdConst[4](Vector(U8): [4, 110, 97, 109, 101])\n\t1: Call string::utf8(vector<u8>): String\n\t2: LdConst[5](Vector(U8): [9, 105, 109, 97, 103, 101, 95, 117, 114, 108])\n\t3: Call string::utf8(vector<u8>): String\n\t4: LdConst[6](Vector(U8): [11, 100, 101, 115, 99, 114, 105, 112, 116, 105, 111, 110])\n\t5: Call string::utf8(vector<u8>): String\n\t6: LdConst[7](Vector(U8): [11, 112, 114, 111, 106, 101, 99, 116, 95, 117, 114, 108])\n\t7: Call string::utf8(vector<u8>): String\n\t8: LdConst[8](Vector(U8): [12, 112, 114, 111, 106, 101, 99, 116, 95, 110, 97, 109, 101])\n\t9: Call string::utf8(vector<u8>): String\n\t10: LdConst[9](Vector(U8): [17, 112, 114, 111, 106, 101, 99, 116, 95, 105, 109, 97, 103, 101, 95, 117, 114, 108])\n\t11: Call string::utf8(vector<u8>): String\n\t12: LdConst[10](Vector(U8): [7, 99, 114, 101, 97, 116, 111, 114])\n\t13: Call string::utf8(vector<u8>): String\n\t14: VecPack(18, 7)\n\t15: StLoc[3](loc1: vector<String>)\n\t16: LdConst[11](Vector(U8): [8, 83, 117, 105, 32, 56, 49, 57, 50])\n\t17: Call string::utf8(vector<u8>): String\n\t18: LdConst[12](Vector(U8): [47, 104, 116, 116, 112, 115, 58, 47, 47, 115, 117, 105, 56, 49, 57, 50, 46, 115, 51, 46, 97, 109, 97, 122, 111, 110, 97, 119, 115, 46, 99, 111, 109, 47, 123, 116, 111, 112, 95, 116, 105, 108, 101, 125, 46, 112, 110, 103])\n\t19: Call string::utf8(vector<u8>): String\n\t20: LdConst[13](Vector(U8): [77, 83, 117, 105, 32, 56, 49, 57, 50, 32, 105, 115, 32, 97, 32, 102, 117, 110, 44, 32, 49, 48, 48, 37, 32, 111, 110, 45, 99, 104, 97, 105, 110, 32, 103, 97, 109, 101, 46, 32, 67, 111, 109, 98, 105, 110, 101, 32, 116, 104, 101, 32, 116, 105, 108, 101, 115, 32, 116, 111, 32, 103, 101, 116, 32, 97, 32, 104, 105, 103, 104, 32, 115, 99, 111, 114, 101, 33])\n\t21: Call string::utf8(vector<u8>): String\n\t22: LdConst[14](Vector(U8): [38, 104, 116, 116, 112, 115, 58, 47, 47, 101, 116, 104, 111, 115, 119, 97, 108, 108, 101, 116, 46, 103, 105, 116, 104, 117, 98, 46, 105, 111, 47, 83, 117, 105, 56, 49, 57, 50, 47])\n\t23: Call string::utf8(vector<u8>): String\n\t24: LdConst[11](Vector(U8): [8, 83, 117, 105, 32, 56, 49, 57, 50])\n\t25: Call string::utf8(vector<u8>): String\n\t26: LdConst[15](Vector(U8): [45, 104, 116, 116, 112, 115, 58, 47, 47, 115, 117, 105, 56, 49, 57, 50, 46, 115, 51, 46, 97, 109, 97, 122, 111, 110, 97, 119, 115, 46, 99, 111, 109, 47, 115, 117, 105, 45, 56, 49, 57, 50, 46, 112, 110, 103])\n\t27: Call string::utf8(vector<u8>): String\n\t28: LdConst[16](Vector(U8): [5, 69, 116, 104, 111, 115])\n\t29: Call string::utf8(vector<u8>): String\n\t30: VecPack(18, 7)\n\t31: StLoc[6](loc4: vector<String>)\n\t32: MoveLoc[0](Arg0: GAME_8192)\n\t33: CopyLoc[1](Arg1: &mut TxContext)\n\t34: Call package::claim<GAME_8192>(GAME_8192, &mut TxContext): Publisher\n\t35: StLoc[5](loc3: Publisher)\n\t36: ImmBorrowLoc[5](loc3: Publisher)\n\t37: MoveLoc[3](loc1: vector<String>)\n\t38: MoveLoc[6](loc4: vector<String>)\n\t39: CopyLoc[1](Arg1: &mut TxContext)\n\t40: Call display::new_with_fields<Game8192>(&Publisher, vector<String>, vector<String>, &mut TxContext): Display<Game8192>\n\t41: StLoc[2](loc0: Display<Game8192>)\n\t42: MutBorrowLoc[2](loc0: Display<Game8192>)\n\t43: Call display::update_version<Game8192>(&mut Display<Game8192>)\n\t44: CopyLoc[1](Arg1: &mut TxContext)\n\t45: Call create_maintainer(&mut TxContext): Game8192Maintainer\n\t46: StLoc[4](loc2: Game8192Maintainer)\n\t47: MoveLoc[5](loc3: Publisher)\n\t48: CopyLoc[1](Arg1: &mut TxContext)\n\t49: FreezeRef\n\t50: Call tx_context::sender(&TxContext): address\n\t51: Call transfer::public_transfer<Publisher>(Publisher, address)\n\t52: MoveLoc[2](loc0: Display<Game8192>)\n\t53: MoveLoc[1](Arg1: &mut TxContext)\n\t54: FreezeRef\n\t55: Call tx_context::sender(&TxContext): address\n\t56: Call transfer::public_transfer<Display<Game8192>>(Display<Game8192>, address)\n\t57: MoveLoc[4](loc2: Game8192Maintainer)\n\t58: Call transfer::share_object<Game8192Maintainer>(Game8192Maintainer)\n\t59: Ret\n}\nentry public create(Arg0: &mut Game8192Maintainer, Arg1: vector<Coin<SUI>>, Arg2: &mut TxContext) {\nL0:\tloc3: u64\nL1:\tloc4: u64\nL2:\tloc5: GameBoard8192\nL3:\tloc6: Game8192\nL4:\tloc7: GameBoard8192\nL5:\tloc8: Coin<SUI>\nL6:\tloc9: address\nL7:\tloc10: Coin<SUI>\nL8:\tloc11: u64\nL9:\tloc12: u64\nL10:\tloc13: UID\nB0:\n\t0: MoveLoc[1](Arg1: vector<Coin<SUI>>)\n\t1: CopyLoc[0](Arg0: &mut Game8192Maintainer)\n\t2: ImmBorrowField[0](Game8192Maintainer.fee: u64)\n\t3: ReadRef\n\t4: CopyLoc[2](Arg2: &mut TxContext)\n\t5: Call merge_and_split(vector<Coin<SUI>>, u64, &mut TxContext): Coin<SUI> * Coin<SUI>\n\t6: StLoc[13](loc10: Coin<SUI>)\n\t7: StLoc[11](loc8: Coin<SUI>)\n\t8: CopyLoc[0](Arg0: &mut Game8192Maintainer)\n\t9: MutBorrowField[1](Game8192Maintainer.balance: Balance<SUI>)\n\t10: MoveLoc[11](loc8: Coin<SUI>)\n\t11: Call coin::put<SUI>(&mut Balance<SUI>, Coin<SUI>)\n\t12: MoveLoc[13](loc10: Coin<SUI>)\n\t13: CopyLoc[2](Arg2: &mut TxContext)\n\t14: FreezeRef\n\t15: Call tx_context::sender(&TxContext): address\n\t16: Call transfer::public_transfer<Coin<SUI>>(Coin<SUI>, address)\n\t17: CopyLoc[2](Arg2: &mut TxContext)\n\t18: FreezeRef\n\t19: Call tx_context::sender(&TxContext): address\n\t20: StLoc[12](loc9: address)\n\t21: MoveLoc[2](Arg2: &mut TxContext)\n\t22: Call object::new(&mut TxContext): UID\n\t23: StLoc[16](loc13: UID)\n\t24: ImmBorrowLoc[16](loc13: UID)\n\t25: Call object::uid_to_bytes(&UID): vector<u8>\n\t26: Call game_board_8192::default(vector<u8>): GameBoard8192\n\t27: StLoc[10](loc7: GameBoard8192)\n\t28: ImmBorrowLoc[10](loc7: GameBoard8192)\n\t29: Call game_board_8192::score(&GameBoard8192): &u64\n\t30: ReadRef\n\t31: StLoc[14](loc11: u64)\n\t32: ImmBorrowLoc[10](loc7: GameBoard8192)\n\t33: Call game_board_8192::top_tile(&GameBoard8192): &u64\n\t34: ReadRef\n\t35: StLoc[15](loc12: u64)\n\t36: MoveLoc[16](loc13: UID)\n\t37: StLoc[3](loc0: UID)\n\t38: CopyLoc[0](Arg0: &mut Game8192Maintainer)\n\t39: ImmBorrowField[2](Game8192Maintainer.game_count: u64)\n\t40: ReadRef\n\t41: LdU64(1)\n\t42: Add\n\t43: StLoc[4](loc1: u64)\n\t44: CopyLoc[12](loc9: address)\n\t45: StLoc[5](loc2: address)\n\t46: CopyLoc[14](loc11: u64)\n\t47: StLoc[6](loc3: u64)\n\t48: MoveLoc[15](loc12: u64)\n\t49: StLoc[7](loc4: u64)\n\t50: CopyLoc[10](loc7: GameBoard8192)\n\t51: StLoc[8](loc5: GameBoard8192)\n\t52: MoveLoc[3](loc0: UID)\n\t53: MoveLoc[4](loc1: u64)\n\t54: MoveLoc[5](loc2: address)\n\t55: MoveLoc[8](loc5: GameBoard8192)\n\t56: LdU64(0)\n\t57: MoveLoc[6](loc3: u64)\n\t58: MoveLoc[7](loc4: u64)\n\t59: LdFalse\n\t60: Pack[1](Game8192)\n\t61: StLoc[9](loc6: Game8192)\n\t62: ImmBorrowLoc[9](loc6: Game8192)\n\t63: ImmBorrowField[3](Game8192.id: UID)\n\t64: Call object::uid_to_inner(&UID): ID\n\t65: CopyLoc[12](loc9: address)\n\t66: MoveLoc[14](loc11: u64)\n\t67: ImmBorrowLoc[10](loc7: GameBoard8192)\n\t68: Call game_board_8192::packed_spaces(&GameBoard8192): &u64\n\t69: ReadRef\n\t70: Pack[4](NewGameEvent8192)\n\t71: Call event::emit<NewGameEvent8192>(NewGameEvent8192)\n\t72: CopyLoc[0](Arg0: &mut Game8192Maintainer)\n\t73: ImmBorrowField[2](Game8192Maintainer.game_count: u64)\n\t74: ReadRef\n\t75: LdU64(1)\n\t76: Add\n\t77: MoveLoc[0](Arg0: &mut Game8192Maintainer)\n\t78: MutBorrowField[2](Game8192Maintainer.game_count: u64)\n\t79: WriteRef\n\t80: MoveLoc[9](loc6: Game8192)\n\t81: MoveLoc[12](loc9: address)\n\t82: Call transfer::transfer<Game8192>(Game8192, address)\n\t83: Ret\n}\nentry public make_move(Arg0: &mut Game8192, Arg1: u64, Arg2: &mut TxContext) {\nL0:\tloc3: vector<u8>\nL1:\tloc4: u64\nL2:\tloc5: u64\nL3:\tloc6: UID\nB0:\n\t0: CopyLoc[0](Arg0: &mut Game8192)\n\t1: ImmBorrowField[4](Game8192.active_board: GameBoard8192)\n\t2: ReadRef\n\t3: StLoc[5](loc2: GameBoard8192)\n\t4: MoveLoc[2](Arg2: &mut TxContext)\n\t5: Call object::new(&mut TxContext): UID\n\t6: StLoc[9](loc6: UID)\n\t7: ImmBorrowLoc[9](loc6: UID)\n\t8: Call object::uid_to_bytes(&UID): vector<u8>\n\t9: StLoc[6](loc3: vector<u8>)\n\t10: MoveLoc[9](loc6: UID)\n\t11: Call object::delete(UID)\n\t12: MutBorrowLoc[5](loc2: GameBoard8192)\n\t13: CopyLoc[1](Arg1: u64)\n\t14: MoveLoc[6](loc3: vector<u8>)\n\t15: Call game_board_8192::move_direction(&mut GameBoard8192, u64, vector<u8>)\n\t16: CopyLoc[0](Arg0: &mut Game8192)\n\t17: ImmBorrowField[5](Game8192.move_count: u64)\n\t18: ReadRef\n\t19: LdU64(1)\n\t20: Add\n\t21: StLoc[4](loc1: u64)\n\t22: ImmBorrowLoc[5](loc2: GameBoard8192)\n\t23: Call game_board_8192::top_tile(&GameBoard8192): &u64\n\t24: ReadRef\n\t25: StLoc[8](loc5: u64)\n\t26: ImmBorrowLoc[5](loc2: GameBoard8192)\n\t27: Call game_board_8192::score(&GameBoard8192): &u64\n\t28: ReadRef\n\t29: StLoc[7](loc4: u64)\n\t30: ImmBorrowLoc[5](loc2: GameBoard8192)\n\t31: Call game_board_8192::game_over(&GameBoard8192): &bool\n\t32: ReadRef\n\t33: StLoc[3](loc0: bool)\n\t34: CopyLoc[0](Arg0: &mut Game8192)\n\t35: ImmBorrowField[3](Game8192.id: UID)\n\t36: Call object::uid_to_inner(&UID): ID\n\t37: MoveLoc[1](Arg1: u64)\n\t38: CopyLoc[4](loc1: u64)\n\t39: ImmBorrowLoc[5](loc2: GameBoard8192)\n\t40: Call game_board_8192::packed_spaces(&GameBoard8192): &u64\n\t41: ReadRef\n\t42: ImmBorrowLoc[5](loc2: GameBoard8192)\n\t43: Call game_board_8192::last_tile(&GameBoard8192): &vector<u64>\n\t44: ReadRef\n\t45: CopyLoc[8](loc5: u64)\n\t46: CopyLoc[7](loc4: u64)\n\t47: CopyLoc[3](loc0: bool)\n\t48: Pack[5](GameMoveEvent8192)\n\t49: Call event::emit<GameMoveEvent8192>(GameMoveEvent8192)\n\t50: CopyLoc[3](loc0: bool)\n\t51: BrFalse(59)\nB1:\n\t52: CopyLoc[0](Arg0: &mut Game8192)\n\t53: ImmBorrowField[3](Game8192.id: UID)\n\t54: Call object::uid_to_inner(&UID): ID\n\t55: CopyLoc[8](loc5: u64)\n\t56: CopyLoc[7](loc4: u64)\n\t57: Pack[6](GameOverEvent8192)\n\t58: Call event::emit<GameOverEvent8192>(GameOverEvent8192)\nB2:\n\t59: MoveLoc[4](loc1: u64)\n\t60: CopyLoc[0](Arg0: &mut Game8192)\n\t61: MutBorrowField[5](Game8192.move_count: u64)\n\t62: WriteRef\n\t63: MoveLoc[5](loc2: GameBoard8192)\n\t64: CopyLoc[0](Arg0: &mut Game8192)\n\t65: MutBorrowField[4](Game8192.active_board: GameBoard8192)\n\t66: WriteRef\n\t67: MoveLoc[7](loc4: u64)\n\t68: CopyLoc[0](Arg0: &mut Game8192)\n\t69: MutBorrowField[6](Game8192.score: u64)\n\t70: WriteRef\n\t71: MoveLoc[8](loc5: u64)\n\t72: CopyLoc[0](Arg0: &mut Game8192)\n\t73: MutBorrowField[7](Game8192.top_tile: u64)\n\t74: WriteRef\n\t75: MoveLoc[3](loc0: bool)\n\t76: MoveLoc[0](Arg0: &mut Game8192)\n\t77: MutBorrowField[8](Game8192.game_over: bool)\n\t78: WriteRef\n\t79: Ret\n}\nentry public pay_maintainer(Arg0: &mut Game8192Maintainer, Arg1: &mut TxContext) {\nB0:\n\t0: CopyLoc[1](Arg1: &mut TxContext)\n\t1: FreezeRef\n\t2: Call tx_context::sender(&TxContext): address\n\t3: CopyLoc[0](Arg0: &mut Game8192Maintainer)\n\t4: ImmBorrowField[9](Game8192Maintainer.maintainer_address: address)\n\t5: ReadRef\n\t6: Eq\n\t7: BrFalse(9)\nB1:\n\t8: Branch(15)\nB2:\n\t9: MoveLoc[0](Arg0: &mut Game8192Maintainer)\n\t10: Pop\n\t11: MoveLoc[1](Arg1: &mut TxContext)\n\t12: Pop\n\t13: LdConst[2](U64: [1, 0, 0, 0, 0, 0, 0, 0])\n\t14: Abort\nB3:\n\t15: CopyLoc[0](Arg0: &mut Game8192Maintainer)\n\t16: ImmBorrowField[1](Game8192Maintainer.balance: Balance<SUI>)\n\t17: Call balance::value<SUI>(&Balance<SUI>): u64\n\t18: StLoc[2](loc0: u64)\n\t19: CopyLoc[2](loc0: u64)\n\t20: LdU64(0)\n\t21: Gt\n\t22: BrFalse(24)\nB4:\n\t23: Branch(30)\nB5:\n\t24: MoveLoc[0](Arg0: &mut Game8192Maintainer)\n\t25: Pop\n\t26: MoveLoc[1](Arg1: &mut TxContext)\n\t27: Pop\n\t28: LdConst[3](U64: [2, 0, 0, 0, 0, 0, 0, 0])\n\t29: Abort\nB6:\n\t30: MoveLoc[0](Arg0: &mut Game8192Maintainer)\n\t31: MutBorrowField[1](Game8192Maintainer.balance: Balance<SUI>)\n\t32: MoveLoc[2](loc0: u64)\n\t33: CopyLoc[1](Arg1: &mut TxContext)\n\t34: Call coin::take<SUI>(&mut Balance<SUI>, u64, &mut TxContext): Coin<SUI>\n\t35: MoveLoc[1](Arg1: &mut TxContext)\n\t36: FreezeRef\n\t37: Call tx_context::sender(&TxContext): address\n\t38: Call transfer::public_transfer<Coin<SUI>>(Coin<SUI>, address)\n\t39: Ret\n}\nentry public change_maintainer(Arg0: &mut Game8192Maintainer, Arg1: address, Arg2: &mut TxContext) {\nB0:\n\t0: MoveLoc[2](Arg2: &mut TxContext)\n\t1: FreezeRef\n\t2: Call tx_context::sender(&TxContext): address\n\t3: CopyLoc[0](Arg0: &mut Game8192Maintainer)\n\t4: ImmBorrowField[9](Game8192Maintainer.maintainer_address: address)\n\t5: ReadRef\n\t6: Eq\n\t7: BrFalse(9)\nB1:\n\t8: Branch(13)\nB2:\n\t9: MoveLoc[0](Arg0: &mut Game8192Maintainer)\n\t10: Pop\n\t11: LdConst[2](U64: [1, 0, 0, 0, 0, 0, 0, 0])\n\t12: Abort\nB3:\n\t13: MoveLoc[1](Arg1: address)\n\t14: MoveLoc[0](Arg0: &mut Game8192Maintainer)\n\t15: MutBorrowField[9](Game8192Maintainer.maintainer_address: address)\n\t16: WriteRef\n\t17: Ret\n}\nentry public change_fee(Arg0: &mut Game8192Maintainer, Arg1: u64, Arg2: &mut TxContext) {\nB0:\n\t0: MoveLoc[2](Arg2: &mut TxContext)\n\t1: FreezeRef\n\t2: Call tx_context::sender(&TxContext): address\n\t3: CopyLoc[0](Arg0: &mut Game8192Maintainer)\n\t4: ImmBorrowField[9](Game8192Maintainer.maintainer_address: address)\n\t5: ReadRef\n\t6: Eq\n\t7: BrFalse(9)\nB1:\n\t8: Branch(13)\nB2:\n\t9: MoveLoc[0](Arg0: &mut Game8192Maintainer)\n\t10: Pop\n\t11: LdConst[2](U64: [1, 0, 0, 0, 0, 0, 0, 0])\n\t12: Abort\nB3:\n\t13: MoveLoc[1](Arg1: u64)\n\t14: MoveLoc[0](Arg0: &mut Game8192Maintainer)\n\t15: MutBorrowField[0](Game8192Maintainer.fee: u64)\n\t16: WriteRef\n\t17: Ret\n}\npublic id(Arg0: &Game8192): ID {\nB0:\n\t0: MoveLoc[0](Arg0: &Game8192)\n\t1: ImmBorrowField[3](Game8192.id: UID)\n\t2: Call object::uid_to_inner(&UID): ID\n\t3: Ret\n}\npublic player(Arg0: &Game8192): &address {\nB0:\n\t0: MoveLoc[0](Arg0: &Game8192)\n\t1: ImmBorrowField[10](Game8192.player: address)\n\t2: Ret\n}\npublic active_board(Arg0: &Game8192): &GameBoard8192 {\nB0:\n\t0: MoveLoc[0](Arg0: &Game8192)\n\t1: ImmBorrowField[4](Game8192.active_board: GameBoard8192)\n\t2: Ret\n}\npublic top_tile(Arg0: &Game8192): &u64 {\nB0:\n\t0: MoveLoc[0](Arg0: &Game8192)\n\t1: Call active_board(&Game8192): &GameBoard8192\n\t2: Call game_board_8192::top_tile(&GameBoard8192): &u64\n\t3: Ret\n}\npublic score(Arg0: &Game8192): &u64 {\nB0:\n\t0: MoveLoc[0](Arg0: &Game8192)\n\t1: Call active_board(&Game8192): &GameBoard8192\n\t2: Call game_board_8192::score(&GameBoard8192): &u64\n\t3: Ret\n}\npublic move_count(Arg0: &Game8192): &u64 {\nB0:\n\t0: MoveLoc[0](Arg0: &Game8192)\n\t1: ImmBorrowField[5](Game8192.move_count: u64)\n\t2: Ret\n}\npublic(friend) create_maintainer(Arg0: &mut TxContext): Game8192Maintainer {\nB0:\n\t0: CopyLoc[0](Arg0: &mut TxContext)\n\t1: Call object::new(&mut TxContext): UID\n\t2: MoveLoc[0](Arg0: &mut TxContext)\n\t3: FreezeRef\n\t4: Call tx_context::sender(&TxContext): address\n\t5: LdU64(0)\n\t6: LdConst[0](U64: [0, 194, 235, 11, 0, 0, 0, 0])\n\t7: Call balance::zero<SUI>(): Balance<SUI>\n\t8: Pack[3](Game8192Maintainer)\n\t9: Ret\n}\nmerge_and_split(Arg0: vector<Coin<SUI>>, Arg1: u64, Arg2: &mut TxContext): Coin<SUI> * Coin<SUI> {\nB0:\n\t0: MutBorrowLoc[0](Arg0: vector<Coin<SUI>>)\n\t1: VecPopBack(34)\n\t2: StLoc[3](loc0: Coin<SUI>)\n\t3: MutBorrowLoc[3](loc0: Coin<SUI>)\n\t4: MoveLoc[0](Arg0: vector<Coin<SUI>>)\n\t5: Call pay::join_vec<SUI>(&mut Coin<SUI>, vector<Coin<SUI>>)\n\t6: ImmBorrowLoc[3](loc0: Coin<SUI>)\n\t7: Call coin::value<SUI>(&Coin<SUI>): u64\n\t8: StLoc[4](loc1: u64)\n\t9: CopyLoc[4](loc1: u64)\n\t10: CopyLoc[1](Arg1: u64)\n\t11: Ge\n\t12: BrFalse(14)\nB1:\n\t13: Branch(18)\nB2:\n\t14: MoveLoc[2](Arg2: &mut TxContext)\n\t15: Pop\n\t16: MoveLoc[4](loc1: u64)\n\t17: Abort\nB3:\n\t18: MutBorrowLoc[3](loc0: Coin<SUI>)\n\t19: MoveLoc[1](Arg1: u64)\n\t20: MoveLoc[2](Arg2: &mut TxContext)\n\t21: Call coin::split<SUI>(&mut Coin<SUI>, u64, &mut TxContext): Coin<SUI>\n\t22: MoveLoc[3](loc0: Coin<SUI>)\n\t23: Ret\n}\n}",
                    "game_board_8192": "// Move bytecode v6\nmodule 72f9c76421170b5a797432ba9e1b3b2e2b7cf6faa26eb955396c773af2479e1e.game_board_8192 {\nstruct GameBoard8192 has copy, drop, store {\n\tpacked_spaces: u64,\n\tscore: u64,\n\tlast_tile: vector<u64>,\n\ttop_tile: u64,\n\tgame_over: bool\n}\nstruct SpacePosition has copy, drop {\n\trow: u8,\n\tcolumn: u8\n}\n\npublic left(): u64 {\nB0:\n\t0: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t1: Ret\n}\npublic right(): u64 {\nB0:\n\t0: LdConst[1](U64: [1, 0, 0, 0, 0, 0, 0, 0])\n\t1: Ret\n}\npublic up(): u64 {\nB0:\n\t0: LdConst[2](U64: [2, 0, 0, 0, 0, 0, 0, 0])\n\t1: Ret\n}\npublic down(): u64 {\nB0:\n\t0: LdConst[3](U64: [3, 0, 0, 0, 0, 0, 0, 0])\n\t1: Ret\n}\npublic(friend) default(Arg0: vector<u8>): GameBoard8192 {\nL0:\tloc1: u8\nL1:\tloc2: u64\nL2:\tloc3: u8\nL3:\tloc4: u8\nB0:\n\t0: LdU64(0)\n\t1: StLoc[3](loc2: u64)\n\t2: ImmBorrowLoc[0](Arg0: vector<u8>)\n\t3: LdU64(1)\n\t4: VecImmBorrow(9)\n\t5: ReadRef\n\t6: LdU8(2)\n\t7: Mod\n\t8: StLoc[4](loc3: u8)\n\t9: ImmBorrowLoc[0](Arg0: vector<u8>)\n\t10: LdU64(2)\n\t11: VecImmBorrow(9)\n\t12: ReadRef\n\t13: LdU8(4)\n\t14: Mod\n\t15: StLoc[1](loc0: u8)\n\t16: MoveLoc[3](loc2: u64)\n\t17: MoveLoc[4](loc3: u8)\n\t18: MoveLoc[1](loc0: u8)\n\t19: LdConst[1](U64: [1, 0, 0, 0, 0, 0, 0, 0])\n\t20: Call fill_in_space_at(u64, u8, u8, u64): u64\n\t21: StLoc[3](loc2: u64)\n\t22: ImmBorrowLoc[0](Arg0: vector<u8>)\n\t23: LdU64(3)\n\t24: VecImmBorrow(9)\n\t25: ReadRef\n\t26: LdU8(2)\n\t27: Mod\n\t28: LdU8(2)\n\t29: Add\n\t30: StLoc[5](loc4: u8)\n\t31: ImmBorrowLoc[0](Arg0: vector<u8>)\n\t32: LdU64(4)\n\t33: VecImmBorrow(9)\n\t34: ReadRef\n\t35: LdU8(4)\n\t36: Mod\n\t37: StLoc[2](loc1: u8)\n\t38: MoveLoc[3](loc2: u64)\n\t39: MoveLoc[5](loc4: u8)\n\t40: MoveLoc[2](loc1: u8)\n\t41: LdConst[1](U64: [1, 0, 0, 0, 0, 0, 0, 0])\n\t42: Call fill_in_space_at(u64, u8, u8, u64): u64\n\t43: LdU64(0)\n\t44: LdU64(3)\n\t45: LdU64(1)\n\t46: LdConst[1](U64: [1, 0, 0, 0, 0, 0, 0, 0])\n\t47: CastU64\n\t48: VecPack(1, 3)\n\t49: LdConst[1](U64: [1, 0, 0, 0, 0, 0, 0, 0])\n\t50: LdFalse\n\t51: Pack[0](GameBoard8192)\n\t52: Ret\n}\npublic(friend) move_direction(Arg0: &mut GameBoard8192, Arg1: u64, Arg2: vector<u8>) {\nL0:\tloc3: u64\nB0:\n\t0: CopyLoc[0](Arg0: &mut GameBoard8192)\n\t1: ImmBorrowField[0](GameBoard8192.game_over: bool)\n\t2: ReadRef\n\t3: Not\n\t4: BrFalse(6)\nB1:\n\t5: Branch(10)\nB2:\n\t6: MoveLoc[0](Arg0: &mut GameBoard8192)\n\t7: Pop\n\t8: LdU64(3)\n\t9: Abort\nB3:\n\t10: CopyLoc[0](Arg0: &mut GameBoard8192)\n\t11: ImmBorrowField[1](GameBoard8192.packed_spaces: u64)\n\t12: ReadRef\n\t13: StLoc[4](loc1: u64)\n\t14: CopyLoc[0](Arg0: &mut GameBoard8192)\n\t15: ImmBorrowField[1](GameBoard8192.packed_spaces: u64)\n\t16: ReadRef\n\t17: CopyLoc[1](Arg1: u64)\n\t18: Call move_spaces(u64, u64): u64 * u64 * u64\n\t19: StLoc[3](loc0: u64)\n\t20: StLoc[6](loc3: u64)\n\t21: CopyLoc[0](Arg0: &mut GameBoard8192)\n\t22: MutBorrowField[1](GameBoard8192.packed_spaces: u64)\n\t23: WriteRef\n\t24: MoveLoc[4](loc1: u64)\n\t25: CopyLoc[0](Arg0: &mut GameBoard8192)\n\t26: ImmBorrowField[1](GameBoard8192.packed_spaces: u64)\n\t27: ReadRef\n\t28: Eq\n\t29: BrFalse(44)\nB4:\n\t30: CopyLoc[0](Arg0: &mut GameBoard8192)\n\t31: FreezeRef\n\t32: Call move_possible(&GameBoard8192): bool\n\t33: Not\n\t34: BrFalse(40)\nB5:\n\t35: LdTrue\n\t36: MoveLoc[0](Arg0: &mut GameBoard8192)\n\t37: MutBorrowField[0](GameBoard8192.game_over: bool)\n\t38: WriteRef\n\t39: Ret\nB6:\n\t40: MoveLoc[0](Arg0: &mut GameBoard8192)\n\t41: Pop\n\t42: LdU64(4)\n\t43: Abort\nB7:\n\t44: CopyLoc[0](Arg0: &mut GameBoard8192)\n\t45: ImmBorrowField[2](GameBoard8192.score: u64)\n\t46: ReadRef\n\t47: MoveLoc[3](loc0: u64)\n\t48: Add\n\t49: CopyLoc[0](Arg0: &mut GameBoard8192)\n\t50: MutBorrowField[2](GameBoard8192.score: u64)\n\t51: WriteRef\n\t52: CopyLoc[0](Arg0: &mut GameBoard8192)\n\t53: MoveLoc[1](Arg1: u64)\n\t54: MoveLoc[2](Arg2: vector<u8>)\n\t55: Call add_new_tile(&mut GameBoard8192, u64, vector<u8>): u64\n\t56: StLoc[5](loc2: u64)\n\t57: CopyLoc[5](loc2: u64)\n\t58: CopyLoc[6](loc3: u64)\n\t59: Gt\n\t60: BrFalse(63)\nB8:\n\t61: MoveLoc[5](loc2: u64)\n\t62: StLoc[6](loc3: u64)\nB9:\n\t63: MoveLoc[6](loc3: u64)\n\t64: CopyLoc[0](Arg0: &mut GameBoard8192)\n\t65: MutBorrowField[3](GameBoard8192.top_tile: u64)\n\t66: WriteRef\n\t67: CopyLoc[0](Arg0: &mut GameBoard8192)\n\t68: FreezeRef\n\t69: Call move_possible(&GameBoard8192): bool\n\t70: Not\n\t71: BrFalse(77)\nB10:\n\t72: LdTrue\n\t73: MoveLoc[0](Arg0: &mut GameBoard8192)\n\t74: MutBorrowField[0](GameBoard8192.game_over: bool)\n\t75: WriteRef\n\t76: Branch(79)\nB11:\n\t77: MoveLoc[0](Arg0: &mut GameBoard8192)\n\t78: Pop\nB12:\n\t79: Ret\n}\npublic(friend) packed_spaces(Arg0: &GameBoard8192): &u64 {\nB0:\n\t0: MoveLoc[0](Arg0: &GameBoard8192)\n\t1: ImmBorrowField[1](GameBoard8192.packed_spaces: u64)\n\t2: Ret\n}\npublic(friend) score(Arg0: &GameBoard8192): &u64 {\nB0:\n\t0: MoveLoc[0](Arg0: &GameBoard8192)\n\t1: ImmBorrowField[2](GameBoard8192.score: u64)\n\t2: Ret\n}\npublic(friend) last_tile(Arg0: &GameBoard8192): &vector<u64> {\nB0:\n\t0: MoveLoc[0](Arg0: &GameBoard8192)\n\t1: ImmBorrowField[4](GameBoard8192.last_tile: vector<u64>)\n\t2: Ret\n}\npublic(friend) top_tile(Arg0: &GameBoard8192): &u64 {\nB0:\n\t0: MoveLoc[0](Arg0: &GameBoard8192)\n\t1: ImmBorrowField[3](GameBoard8192.top_tile: u64)\n\t2: Ret\n}\npublic(friend) game_over(Arg0: &GameBoard8192): &bool {\nB0:\n\t0: MoveLoc[0](Arg0: &GameBoard8192)\n\t1: ImmBorrowField[0](GameBoard8192.game_over: bool)\n\t2: Ret\n}\npublic(friend) row_count(): u8 {\nB0:\n\t0: LdConst[14](U8: [4])\n\t1: Ret\n}\npublic(friend) column_count(): u8 {\nB0:\n\t0: LdConst[14](U8: [4])\n\t1: Ret\n}\npublic(friend) space_at(Arg0: u64, Arg1: u8, Arg2: u8): u64 {\nB0:\n\t0: MoveLoc[0](Arg0: u64)\n\t1: MoveLoc[1](Arg1: u8)\n\t2: LdConst[14](U8: [4])\n\t3: Mul\n\t4: MoveLoc[2](Arg2: u8)\n\t5: Add\n\t6: LdConst[14](U8: [4])\n\t7: Mul\n\t8: Shr\n\t9: LdU64(15)\n\t10: BitAnd\n\t11: Ret\n}\npublic(friend) board_space_at(Arg0: &GameBoard8192, Arg1: u8, Arg2: u8): u64 {\nB0:\n\t0: MoveLoc[0](Arg0: &GameBoard8192)\n\t1: ImmBorrowField[1](GameBoard8192.packed_spaces: u64)\n\t2: ReadRef\n\t3: MoveLoc[1](Arg1: u8)\n\t4: MoveLoc[2](Arg2: u8)\n\t5: Call space_at(u64, u8, u8): u64\n\t6: Ret\n}\npublic(friend) empty_space_positions(Arg0: &GameBoard8192, Arg1: u64): vector<SpacePosition> {\nL0:\tloc2: vector<SpacePosition>\nL1:\tloc3: u8\nL2:\tloc4: u8\nL3:\tloc5: u8\nL4:\tloc6: u8\nB0:\n\t0: VecPack(23, 0)\n\t1: StLoc[4](loc2: vector<SpacePosition>)\n\t2: LdConst[14](U8: [4])\n\t3: StLoc[6](loc4: u8)\n\t4: LdConst[14](U8: [4])\n\t5: StLoc[3](loc1: u8)\n\t6: LdU8(0)\n\t7: StLoc[8](loc6: u8)\n\t8: LdU8(0)\n\t9: StLoc[7](loc5: u8)\n\t10: CopyLoc[1](Arg1: u64)\n\t11: LdConst[4](U64: [4, 0, 0, 0, 0, 0, 0, 0])\n\t12: Neq\n\t13: BrFalse(45)\nB1:\n\t14: CopyLoc[1](Arg1: u64)\n\t15: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t16: Eq\n\t17: BrFalse(23)\nB2:\n\t18: LdU8(0)\n\t19: StLoc[8](loc6: u8)\n\t20: LdU8(3)\n\t21: StLoc[7](loc5: u8)\n\t22: Branch(45)\nB3:\n\t23: CopyLoc[1](Arg1: u64)\n\t24: LdConst[1](U64: [1, 0, 0, 0, 0, 0, 0, 0])\n\t25: Eq\n\t26: BrFalse(30)\nB4:\n\t27: LdU8(1)\n\t28: StLoc[3](loc1: u8)\n\t29: Branch(45)\nB5:\n\t30: CopyLoc[1](Arg1: u64)\n\t31: LdConst[2](U64: [2, 0, 0, 0, 0, 0, 0, 0])\n\t32: Eq\n\t33: BrFalse(39)\nB6:\n\t34: LdU8(3)\n\t35: StLoc[8](loc6: u8)\n\t36: LdU8(0)\n\t37: StLoc[7](loc5: u8)\n\t38: Branch(45)\nB7:\n\t39: MoveLoc[1](Arg1: u64)\n\t40: LdConst[3](U64: [3, 0, 0, 0, 0, 0, 0, 0])\n\t41: Eq\n\t42: BrFalse(45)\nB8:\n\t43: LdU8(1)\n\t44: StLoc[6](loc4: u8)\nB9:\n\t45: MoveLoc[8](loc6: u8)\n\t46: StLoc[5](loc3: u8)\nB10:\n\t47: CopyLoc[5](loc3: u8)\n\t48: CopyLoc[6](loc4: u8)\n\t49: Lt\n\t50: BrFalse(81)\nB11:\n\t51: Branch(52)\nB12:\n\t52: CopyLoc[7](loc5: u8)\n\t53: StLoc[2](loc0: u8)\nB13:\n\t54: CopyLoc[2](loc0: u8)\n\t55: CopyLoc[3](loc1: u8)\n\t56: Lt\n\t57: BrFalse(76)\nB14:\n\t58: Branch(59)\nB15:\n\t59: CopyLoc[0](Arg0: &GameBoard8192)\n\t60: CopyLoc[5](loc3: u8)\n\t61: CopyLoc[2](loc0: u8)\n\t62: Call board_space_at(&GameBoard8192, u8, u8): u64\n\t63: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t64: Eq\n\t65: BrFalse(71)\nB16:\n\t66: MutBorrowLoc[4](loc2: vector<SpacePosition>)\n\t67: CopyLoc[5](loc3: u8)\n\t68: CopyLoc[2](loc0: u8)\n\t69: Pack[1](SpacePosition)\n\t70: VecPushBack(23)\nB17:\n\t71: MoveLoc[2](loc0: u8)\n\t72: LdU8(1)\n\t73: Add\n\t74: StLoc[2](loc0: u8)\n\t75: Branch(54)\nB18:\n\t76: MoveLoc[5](loc3: u8)\n\t77: LdU8(1)\n\t78: Add\n\t79: StLoc[5](loc3: u8)\n\t80: Branch(47)\nB19:\n\t81: MoveLoc[0](Arg0: &GameBoard8192)\n\t82: Pop\n\t83: MoveLoc[4](loc2: vector<SpacePosition>)\n\t84: Ret\n}\npublic(friend) empty_space_count(Arg0: &GameBoard8192): u64 {\nB0:\n\t0: MoveLoc[0](Arg0: &GameBoard8192)\n\t1: LdConst[4](U64: [4, 0, 0, 0, 0, 0, 0, 0])\n\t2: Call empty_space_positions(&GameBoard8192, u64): vector<SpacePosition>\n\t3: StLoc[1](loc0: vector<SpacePosition>)\n\t4: ImmBorrowLoc[1](loc0: vector<SpacePosition>)\n\t5: VecLen(23)\n\t6: Ret\n}\nreplace_value_at(Arg0: u64, Arg1: u8, Arg2: u8, Arg3: u64): u64 {\nB0:\n\t0: LdConst[14](U8: [4])\n\t1: MoveLoc[2](Arg2: u8)\n\t2: MoveLoc[1](Arg1: u8)\n\t3: LdConst[14](U8: [4])\n\t4: Mul\n\t5: Add\n\t6: Mul\n\t7: StLoc[5](loc1: u8)\n\t8: LdU64(15)\n\t9: CopyLoc[5](loc1: u8)\n\t10: Shl\n\t11: LdU64(18446744073709551615)\n\t12: Xor\n\t13: StLoc[4](loc0: u64)\n\t14: MoveLoc[0](Arg0: u64)\n\t15: MoveLoc[4](loc0: u64)\n\t16: BitAnd\n\t17: MoveLoc[3](Arg3: u64)\n\t18: MoveLoc[5](loc1: u8)\n\t19: Shl\n\t20: BitOr\n\t21: Ret\n}\nmove_possible(Arg0: &GameBoard8192): bool {\nL0:\tloc1: bool\nL1:\tloc2: u8\nL2:\tloc3: u8\nL3:\tloc4: u64\nL4:\tloc5: u64\nL5:\tloc6: u8\nL6:\tloc7: u8\nL7:\tloc8: u64\nB0:\n\t0: LdConst[14](U8: [4])\n\t1: StLoc[8](loc7: u8)\n\t2: LdConst[14](U8: [4])\n\t3: StLoc[4](loc3: u8)\n\t4: LdU8(0)\n\t5: StLoc[7](loc6: u8)\nB1:\n\t6: CopyLoc[7](loc6: u8)\n\t7: CopyLoc[8](loc7: u8)\n\t8: Lt\n\t9: BrFalse(101)\nB2:\n\t10: Branch(11)\nB3:\n\t11: LdU8(0)\n\t12: StLoc[3](loc2: u8)\nB4:\n\t13: CopyLoc[3](loc2: u8)\n\t14: CopyLoc[4](loc3: u8)\n\t15: Lt\n\t16: BrFalse(96)\nB5:\n\t17: Branch(18)\nB6:\n\t18: CopyLoc[0](Arg0: &GameBoard8192)\n\t19: CopyLoc[7](loc6: u8)\n\t20: CopyLoc[3](loc2: u8)\n\t21: Call board_space_at(&GameBoard8192, u8, u8): u64\n\t22: StLoc[9](loc8: u64)\n\t23: CopyLoc[9](loc8: u64)\n\t24: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t25: Eq\n\t26: BrFalse(31)\nB7:\n\t27: MoveLoc[0](Arg0: &GameBoard8192)\n\t28: Pop\n\t29: LdTrue\n\t30: Ret\nB8:\n\t31: CopyLoc[3](loc2: u8)\n\t32: CopyLoc[4](loc3: u8)\n\t33: LdU8(1)\n\t34: Sub\n\t35: Lt\n\t36: BrFalse(61)\nB9:\n\t37: CopyLoc[0](Arg0: &GameBoard8192)\n\t38: CopyLoc[7](loc6: u8)\n\t39: CopyLoc[3](loc2: u8)\n\t40: LdU8(1)\n\t41: Add\n\t42: Call board_space_at(&GameBoard8192, u8, u8): u64\n\t43: StLoc[6](loc5: u64)\n\t44: CopyLoc[6](loc5: u64)\n\t45: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t46: Eq\n\t47: BrFalse(51)\nB10:\n\t48: LdTrue\n\t49: StLoc[1](loc0: bool)\n\t50: Branch(55)\nB11:\n\t51: MoveLoc[6](loc5: u64)\n\t52: CopyLoc[9](loc8: u64)\n\t53: Eq\n\t54: StLoc[1](loc0: bool)\nB12:\n\t55: MoveLoc[1](loc0: bool)\n\t56: BrFalse(61)\nB13:\n\t57: MoveLoc[0](Arg0: &GameBoard8192)\n\t58: Pop\n\t59: LdTrue\n\t60: Ret\nB14:\n\t61: CopyLoc[7](loc6: u8)\n\t62: CopyLoc[8](loc7: u8)\n\t63: LdU8(1)\n\t64: Sub\n\t65: Lt\n\t66: BrFalse(91)\nB15:\n\t67: CopyLoc[0](Arg0: &GameBoard8192)\n\t68: CopyLoc[7](loc6: u8)\n\t69: LdU8(1)\n\t70: Add\n\t71: CopyLoc[3](loc2: u8)\n\t72: Call board_space_at(&GameBoard8192, u8, u8): u64\n\t73: StLoc[5](loc4: u64)\n\t74: CopyLoc[5](loc4: u64)\n\t75: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t76: Eq\n\t77: BrFalse(81)\nB16:\n\t78: LdTrue\n\t79: StLoc[2](loc1: bool)\n\t80: Branch(85)\nB17:\n\t81: MoveLoc[5](loc4: u64)\n\t82: MoveLoc[9](loc8: u64)\n\t83: Eq\n\t84: StLoc[2](loc1: bool)\nB18:\n\t85: MoveLoc[2](loc1: bool)\n\t86: BrFalse(91)\nB19:\n\t87: MoveLoc[0](Arg0: &GameBoard8192)\n\t88: Pop\n\t89: LdTrue\n\t90: Ret\nB20:\n\t91: MoveLoc[3](loc2: u8)\n\t92: LdU8(1)\n\t93: Add\n\t94: StLoc[3](loc2: u8)\n\t95: Branch(13)\nB21:\n\t96: MoveLoc[7](loc6: u8)\n\t97: LdU8(1)\n\t98: Add\n\t99: StLoc[7](loc6: u8)\n\t100: Branch(6)\nB22:\n\t101: MoveLoc[0](Arg0: &GameBoard8192)\n\t102: Pop\n\t103: LdFalse\n\t104: Ret\n}\nadd_new_tile(Arg0: &mut GameBoard8192, Arg1: u64, Arg2: vector<u8>): u64 {\nL0:\tloc3: bool\nL1:\tloc4: &SpacePosition\nL2:\tloc5: vector<SpacePosition>\nL3:\tloc6: u64\nL4:\tloc7: u64\nL5:\tloc8: u64\nL6:\tloc9: u64\nB0:\n\t0: CopyLoc[0](Arg0: &mut GameBoard8192)\n\t1: MoveLoc[1](Arg1: u64)\n\t2: StLoc[3](loc0: u64)\n\t3: FreezeRef\n\t4: MoveLoc[3](loc0: u64)\n\t5: Call empty_space_positions(&GameBoard8192, u64): vector<SpacePosition>\n\t6: StLoc[8](loc5: vector<SpacePosition>)\n\t7: ImmBorrowLoc[8](loc5: vector<SpacePosition>)\n\t8: VecLen(23)\n\t9: StLoc[9](loc6: u64)\n\t10: CopyLoc[9](loc6: u64)\n\t11: LdU64(0)\n\t12: Gt\n\t13: BrFalse(15)\nB1:\n\t14: Branch(19)\nB2:\n\t15: MoveLoc[0](Arg0: &mut GameBoard8192)\n\t16: Pop\n\t17: LdConst[2](U64: [2, 0, 0, 0, 0, 0, 0, 0])\n\t18: Abort\nB3:\n\t19: LdConst[1](U64: [1, 0, 0, 0, 0, 0, 0, 0])\n\t20: StLoc[11](loc8: u64)\n\t21: CopyLoc[0](Arg0: &mut GameBoard8192)\n\t22: FreezeRef\n\t23: Call top_tile(&GameBoard8192): &u64\n\t24: ReadRef\n\t25: StLoc[12](loc9: u64)\n\t26: CopyLoc[12](loc9: u64)\n\t27: LdConst[13](U64: [13, 0, 0, 0, 0, 0, 0, 0])\n\t28: Ge\n\t29: BrFalse(40)\nB4:\n\t30: ImmBorrowLoc[2](Arg2: vector<u8>)\n\t31: LdU64(0)\n\t32: VecImmBorrow(9)\n\t33: ReadRef\n\t34: LdU8(6)\n\t35: Mod\n\t36: LdU8(0)\n\t37: Eq\n\t38: StLoc[4](loc1: bool)\n\t39: Branch(42)\nB5:\n\t40: LdFalse\n\t41: StLoc[4](loc1: bool)\nB6:\n\t42: MoveLoc[4](loc1: bool)\n\t43: BrFalse(47)\nB7:\n\t44: LdConst[5](U64: [5, 0, 0, 0, 0, 0, 0, 0])\n\t45: StLoc[11](loc8: u64)\n\t46: Branch(100)\nB8:\n\t47: CopyLoc[12](loc9: u64)\n\t48: LdConst[12](U64: [12, 0, 0, 0, 0, 0, 0, 0])\n\t49: Ge\n\t50: BrFalse(61)\nB9:\n\t51: ImmBorrowLoc[2](Arg2: vector<u8>)\n\t52: LdU64(0)\n\t53: VecImmBorrow(9)\n\t54: ReadRef\n\t55: LdU8(5)\n\t56: Mod\n\t57: LdU8(0)\n\t58: Eq\n\t59: StLoc[5](loc2: bool)\n\t60: Branch(63)\nB10:\n\t61: LdFalse\n\t62: StLoc[5](loc2: bool)\nB11:\n\t63: MoveLoc[5](loc2: bool)\n\t64: BrFalse(68)\nB12:\n\t65: LdConst[4](U64: [4, 0, 0, 0, 0, 0, 0, 0])\n\t66: StLoc[11](loc8: u64)\n\t67: Branch(100)\nB13:\n\t68: MoveLoc[12](loc9: u64)\n\t69: LdConst[11](U64: [11, 0, 0, 0, 0, 0, 0, 0])\n\t70: Ge\n\t71: BrFalse(82)\nB14:\n\t72: ImmBorrowLoc[2](Arg2: vector<u8>)\n\t73: LdU64(0)\n\t74: VecImmBorrow(9)\n\t75: ReadRef\n\t76: LdU8(4)\n\t77: Mod\n\t78: LdU8(0)\n\t79: Eq\n\t80: StLoc[6](loc3: bool)\n\t81: Branch(84)\nB15:\n\t82: LdFalse\n\t83: StLoc[6](loc3: bool)\nB16:\n\t84: MoveLoc[6](loc3: bool)\n\t85: BrFalse(89)\nB17:\n\t86: LdConst[3](U64: [3, 0, 0, 0, 0, 0, 0, 0])\n\t87: StLoc[11](loc8: u64)\n\t88: Branch(100)\nB18:\n\t89: ImmBorrowLoc[2](Arg2: vector<u8>)\n\t90: LdU64(0)\n\t91: VecImmBorrow(9)\n\t92: ReadRef\n\t93: LdU8(4)\n\t94: Mod\n\t95: LdU8(0)\n\t96: Eq\n\t97: BrFalse(100)\nB19:\n\t98: LdConst[2](U64: [2, 0, 0, 0, 0, 0, 0, 0])\n\t99: StLoc[11](loc8: u64)\nB20:\n\t100: ImmBorrowLoc[2](Arg2: vector<u8>)\n\t101: LdU64(1)\n\t102: VecImmBorrow(9)\n\t103: ReadRef\n\t104: CastU64\n\t105: MoveLoc[9](loc6: u64)\n\t106: Mod\n\t107: StLoc[10](loc7: u64)\n\t108: ImmBorrowLoc[8](loc5: vector<SpacePosition>)\n\t109: MoveLoc[10](loc7: u64)\n\t110: VecImmBorrow(23)\n\t111: StLoc[7](loc4: &SpacePosition)\n\t112: CopyLoc[0](Arg0: &mut GameBoard8192)\n\t113: ImmBorrowField[1](GameBoard8192.packed_spaces: u64)\n\t114: ReadRef\n\t115: CopyLoc[7](loc4: &SpacePosition)\n\t116: ImmBorrowField[5](SpacePosition.row: u8)\n\t117: ReadRef\n\t118: CopyLoc[7](loc4: &SpacePosition)\n\t119: ImmBorrowField[6](SpacePosition.column: u8)\n\t120: ReadRef\n\t121: CopyLoc[11](loc8: u64)\n\t122: Call fill_in_space_at(u64, u8, u8, u64): u64\n\t123: CopyLoc[0](Arg0: &mut GameBoard8192)\n\t124: MutBorrowField[1](GameBoard8192.packed_spaces: u64)\n\t125: WriteRef\n\t126: CopyLoc[7](loc4: &SpacePosition)\n\t127: ImmBorrowField[5](SpacePosition.row: u8)\n\t128: ReadRef\n\t129: CastU64\n\t130: MoveLoc[7](loc4: &SpacePosition)\n\t131: ImmBorrowField[6](SpacePosition.column: u8)\n\t132: ReadRef\n\t133: CastU64\n\t134: CopyLoc[11](loc8: u64)\n\t135: CastU64\n\t136: VecPack(1, 3)\n\t137: MoveLoc[0](Arg0: &mut GameBoard8192)\n\t138: MutBorrowField[4](GameBoard8192.last_tile: vector<u64>)\n\t139: WriteRef\n\t140: MoveLoc[11](loc8: u64)\n\t141: Ret\n}\nfill_in_space_at(Arg0: u64, Arg1: u8, Arg2: u8, Arg3: u64): u64 {\nB0:\n\t0: MoveLoc[0](Arg0: u64)\n\t1: MoveLoc[3](Arg3: u64)\n\t2: LdConst[14](U8: [4])\n\t3: MoveLoc[2](Arg2: u8)\n\t4: MoveLoc[1](Arg1: u8)\n\t5: LdConst[14](U8: [4])\n\t6: Mul\n\t7: Add\n\t8: Mul\n\t9: Shl\n\t10: BitOr\n\t11: Ret\n}\nspaces_at(Arg0: u64, Arg1: u8, Arg2: u8, Arg3: u64): u64 * u64 * u64 * u64 {\nB0:\n\t0: CopyLoc[3](Arg3: u64)\n\t1: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t2: Eq\n\t3: BrFalse(25)\nB1:\n\t4: CopyLoc[0](Arg0: u64)\n\t5: CopyLoc[1](Arg1: u8)\n\t6: LdU8(0)\n\t7: Call space_at(u64, u8, u8): u64\n\t8: StLoc[4](loc0: u64)\n\t9: CopyLoc[0](Arg0: u64)\n\t10: CopyLoc[1](Arg1: u8)\n\t11: LdU8(1)\n\t12: Call space_at(u64, u8, u8): u64\n\t13: StLoc[5](loc1: u64)\n\t14: CopyLoc[0](Arg0: u64)\n\t15: CopyLoc[1](Arg1: u8)\n\t16: LdU8(2)\n\t17: Call space_at(u64, u8, u8): u64\n\t18: StLoc[6](loc2: u64)\n\t19: MoveLoc[0](Arg0: u64)\n\t20: MoveLoc[1](Arg1: u8)\n\t21: LdU8(3)\n\t22: Call space_at(u64, u8, u8): u64\n\t23: StLoc[7](loc3: u64)\n\t24: Branch(95)\nB2:\n\t25: CopyLoc[3](Arg3: u64)\n\t26: LdConst[1](U64: [1, 0, 0, 0, 0, 0, 0, 0])\n\t27: Eq\n\t28: BrFalse(50)\nB3:\n\t29: CopyLoc[0](Arg0: u64)\n\t30: CopyLoc[1](Arg1: u8)\n\t31: LdU8(3)\n\t32: Call space_at(u64, u8, u8): u64\n\t33: StLoc[4](loc0: u64)\n\t34: CopyLoc[0](Arg0: u64)\n\t35: CopyLoc[1](Arg1: u8)\n\t36: LdU8(2)\n\t37: Call space_at(u64, u8, u8): u64\n\t38: StLoc[5](loc1: u64)\n\t39: CopyLoc[0](Arg0: u64)\n\t40: CopyLoc[1](Arg1: u8)\n\t41: LdU8(1)\n\t42: Call space_at(u64, u8, u8): u64\n\t43: StLoc[6](loc2: u64)\n\t44: MoveLoc[0](Arg0: u64)\n\t45: MoveLoc[1](Arg1: u8)\n\t46: LdU8(0)\n\t47: Call space_at(u64, u8, u8): u64\n\t48: StLoc[7](loc3: u64)\n\t49: Branch(95)\nB4:\n\t50: MoveLoc[3](Arg3: u64)\n\t51: LdConst[2](U64: [2, 0, 0, 0, 0, 0, 0, 0])\n\t52: Eq\n\t53: BrFalse(75)\nB5:\n\t54: CopyLoc[0](Arg0: u64)\n\t55: LdU8(0)\n\t56: CopyLoc[2](Arg2: u8)\n\t57: Call space_at(u64, u8, u8): u64\n\t58: StLoc[4](loc0: u64)\n\t59: CopyLoc[0](Arg0: u64)\n\t60: LdU8(1)\n\t61: CopyLoc[2](Arg2: u8)\n\t62: Call space_at(u64, u8, u8): u64\n\t63: StLoc[5](loc1: u64)\n\t64: CopyLoc[0](Arg0: u64)\n\t65: LdU8(2)\n\t66: CopyLoc[2](Arg2: u8)\n\t67: Call space_at(u64, u8, u8): u64\n\t68: StLoc[6](loc2: u64)\n\t69: MoveLoc[0](Arg0: u64)\n\t70: LdU8(3)\n\t71: MoveLoc[2](Arg2: u8)\n\t72: Call space_at(u64, u8, u8): u64\n\t73: StLoc[7](loc3: u64)\n\t74: Branch(95)\nB6:\n\t75: CopyLoc[0](Arg0: u64)\n\t76: LdU8(3)\n\t77: CopyLoc[2](Arg2: u8)\n\t78: Call space_at(u64, u8, u8): u64\n\t79: StLoc[4](loc0: u64)\n\t80: CopyLoc[0](Arg0: u64)\n\t81: LdU8(2)\n\t82: CopyLoc[2](Arg2: u8)\n\t83: Call space_at(u64, u8, u8): u64\n\t84: StLoc[5](loc1: u64)\n\t85: CopyLoc[0](Arg0: u64)\n\t86: LdU8(1)\n\t87: CopyLoc[2](Arg2: u8)\n\t88: Call space_at(u64, u8, u8): u64\n\t89: StLoc[6](loc2: u64)\n\t90: MoveLoc[0](Arg0: u64)\n\t91: LdU8(0)\n\t92: MoveLoc[2](Arg2: u8)\n\t93: Call space_at(u64, u8, u8): u64\n\t94: StLoc[7](loc3: u64)\nB7:\n\t95: MoveLoc[4](loc0: u64)\n\t96: MoveLoc[5](loc1: u64)\n\t97: MoveLoc[6](loc2: u64)\n\t98: MoveLoc[7](loc3: u64)\n\t99: Ret\n}\nsave_spaces(Arg0: u64, Arg1: u8, Arg2: u8, Arg3: u64, Arg4: u64, Arg5: u64, Arg6: u64, Arg7: bool, Arg8: bool, Arg9: bool, Arg10: bool, Arg11: u64): u64 {\nB0:\n\t0: CopyLoc[11](Arg11: u64)\n\t1: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t2: Eq\n\t3: BrFalse(37)\nB1:\n\t4: MoveLoc[7](Arg7: bool)\n\t5: BrFalse(12)\nB2:\n\t6: MoveLoc[0](Arg0: u64)\n\t7: CopyLoc[1](Arg1: u8)\n\t8: LdU8(0)\n\t9: MoveLoc[3](Arg3: u64)\n\t10: Call replace_value_at(u64, u8, u8, u64): u64\n\t11: StLoc[0](Arg0: u64)\nB3:\n\t12: MoveLoc[8](Arg8: bool)\n\t13: BrFalse(20)\nB4:\n\t14: MoveLoc[0](Arg0: u64)\n\t15: CopyLoc[1](Arg1: u8)\n\t16: LdU8(1)\n\t17: MoveLoc[4](Arg4: u64)\n\t18: Call replace_value_at(u64, u8, u8, u64): u64\n\t19: StLoc[0](Arg0: u64)\nB5:\n\t20: MoveLoc[9](Arg9: bool)\n\t21: BrFalse(28)\nB6:\n\t22: MoveLoc[0](Arg0: u64)\n\t23: CopyLoc[1](Arg1: u8)\n\t24: LdU8(2)\n\t25: MoveLoc[5](Arg5: u64)\n\t26: Call replace_value_at(u64, u8, u8, u64): u64\n\t27: StLoc[0](Arg0: u64)\nB7:\n\t28: MoveLoc[10](Arg10: bool)\n\t29: BrFalse(36)\nB8:\n\t30: MoveLoc[0](Arg0: u64)\n\t31: MoveLoc[1](Arg1: u8)\n\t32: LdU8(3)\n\t33: MoveLoc[6](Arg6: u64)\n\t34: Call replace_value_at(u64, u8, u8, u64): u64\n\t35: StLoc[0](Arg0: u64)\nB9:\n\t36: Branch(147)\nB10:\n\t37: CopyLoc[11](Arg11: u64)\n\t38: LdConst[1](U64: [1, 0, 0, 0, 0, 0, 0, 0])\n\t39: Eq\n\t40: BrFalse(74)\nB11:\n\t41: MoveLoc[7](Arg7: bool)\n\t42: BrFalse(49)\nB12:\n\t43: MoveLoc[0](Arg0: u64)\n\t44: CopyLoc[1](Arg1: u8)\n\t45: LdU8(3)\n\t46: MoveLoc[3](Arg3: u64)\n\t47: Call replace_value_at(u64, u8, u8, u64): u64\n\t48: StLoc[0](Arg0: u64)\nB13:\n\t49: MoveLoc[8](Arg8: bool)\n\t50: BrFalse(57)\nB14:\n\t51: MoveLoc[0](Arg0: u64)\n\t52: CopyLoc[1](Arg1: u8)\n\t53: LdU8(2)\n\t54: MoveLoc[4](Arg4: u64)\n\t55: Call replace_value_at(u64, u8, u8, u64): u64\n\t56: StLoc[0](Arg0: u64)\nB15:\n\t57: MoveLoc[9](Arg9: bool)\n\t58: BrFalse(65)\nB16:\n\t59: MoveLoc[0](Arg0: u64)\n\t60: CopyLoc[1](Arg1: u8)\n\t61: LdU8(1)\n\t62: MoveLoc[5](Arg5: u64)\n\t63: Call replace_value_at(u64, u8, u8, u64): u64\n\t64: StLoc[0](Arg0: u64)\nB17:\n\t65: MoveLoc[10](Arg10: bool)\n\t66: BrFalse(73)\nB18:\n\t67: MoveLoc[0](Arg0: u64)\n\t68: MoveLoc[1](Arg1: u8)\n\t69: LdU8(0)\n\t70: MoveLoc[6](Arg6: u64)\n\t71: Call replace_value_at(u64, u8, u8, u64): u64\n\t72: StLoc[0](Arg0: u64)\nB19:\n\t73: Branch(147)\nB20:\n\t74: CopyLoc[11](Arg11: u64)\n\t75: LdConst[2](U64: [2, 0, 0, 0, 0, 0, 0, 0])\n\t76: Eq\n\t77: BrFalse(111)\nB21:\n\t78: MoveLoc[7](Arg7: bool)\n\t79: BrFalse(86)\nB22:\n\t80: MoveLoc[0](Arg0: u64)\n\t81: LdU8(0)\n\t82: CopyLoc[2](Arg2: u8)\n\t83: MoveLoc[3](Arg3: u64)\n\t84: Call replace_value_at(u64, u8, u8, u64): u64\n\t85: StLoc[0](Arg0: u64)\nB23:\n\t86: MoveLoc[8](Arg8: bool)\n\t87: BrFalse(94)\nB24:\n\t88: MoveLoc[0](Arg0: u64)\n\t89: LdU8(1)\n\t90: CopyLoc[2](Arg2: u8)\n\t91: MoveLoc[4](Arg4: u64)\n\t92: Call replace_value_at(u64, u8, u8, u64): u64\n\t93: StLoc[0](Arg0: u64)\nB25:\n\t94: MoveLoc[9](Arg9: bool)\n\t95: BrFalse(102)\nB26:\n\t96: MoveLoc[0](Arg0: u64)\n\t97: LdU8(2)\n\t98: CopyLoc[2](Arg2: u8)\n\t99: MoveLoc[5](Arg5: u64)\n\t100: Call replace_value_at(u64, u8, u8, u64): u64\n\t101: StLoc[0](Arg0: u64)\nB27:\n\t102: MoveLoc[10](Arg10: bool)\n\t103: BrFalse(110)\nB28:\n\t104: MoveLoc[0](Arg0: u64)\n\t105: LdU8(3)\n\t106: MoveLoc[2](Arg2: u8)\n\t107: MoveLoc[6](Arg6: u64)\n\t108: Call replace_value_at(u64, u8, u8, u64): u64\n\t109: StLoc[0](Arg0: u64)\nB29:\n\t110: Branch(147)\nB30:\n\t111: MoveLoc[11](Arg11: u64)\n\t112: LdConst[3](U64: [3, 0, 0, 0, 0, 0, 0, 0])\n\t113: Eq\n\t114: BrFalse(147)\nB31:\n\t115: MoveLoc[7](Arg7: bool)\n\t116: BrFalse(123)\nB32:\n\t117: MoveLoc[0](Arg0: u64)\n\t118: LdU8(3)\n\t119: CopyLoc[2](Arg2: u8)\n\t120: MoveLoc[3](Arg3: u64)\n\t121: Call replace_value_at(u64, u8, u8, u64): u64\n\t122: StLoc[0](Arg0: u64)\nB33:\n\t123: MoveLoc[8](Arg8: bool)\n\t124: BrFalse(131)\nB34:\n\t125: MoveLoc[0](Arg0: u64)\n\t126: LdU8(2)\n\t127: CopyLoc[2](Arg2: u8)\n\t128: MoveLoc[4](Arg4: u64)\n\t129: Call replace_value_at(u64, u8, u8, u64): u64\n\t130: StLoc[0](Arg0: u64)\nB35:\n\t131: MoveLoc[9](Arg9: bool)\n\t132: BrFalse(139)\nB36:\n\t133: MoveLoc[0](Arg0: u64)\n\t134: LdU8(1)\n\t135: CopyLoc[2](Arg2: u8)\n\t136: MoveLoc[5](Arg5: u64)\n\t137: Call replace_value_at(u64, u8, u8, u64): u64\n\t138: StLoc[0](Arg0: u64)\nB37:\n\t139: MoveLoc[10](Arg10: bool)\n\t140: BrFalse(147)\nB38:\n\t141: MoveLoc[0](Arg0: u64)\n\t142: LdU8(0)\n\t143: MoveLoc[2](Arg2: u8)\n\t144: MoveLoc[6](Arg6: u64)\n\t145: Call replace_value_at(u64, u8, u8, u64): u64\n\t146: StLoc[0](Arg0: u64)\nB39:\n\t147: MoveLoc[0](Arg0: u64)\n\t148: Ret\n}\npublic(friend) move_spaces(Arg0: u64, Arg1: u64): u64 * u64 * u64 {\nL0:\tloc2: u8\nL1:\tloc3: u64\nL2:\tloc4: u8\nL3:\tloc5: u64\nL4:\tloc6: u64\nL5:\tloc7: u64\nL6:\tloc8: u64\nL7:\tloc9: u8\nL8:\tloc10: u8\nL9:\tloc11: u64\nL10:\tloc12: u64\nL11:\tloc13: u64\nL12:\tloc14: u64\nL13:\tloc15: u64\nL14:\tloc16: u64\nL15:\tloc17: u64\nL16:\tloc18: u8\nL17:\tloc19: u64\nL18:\tloc20: u64\nB0:\n\t0: MoveLoc[1](Arg1: u64)\n\t1: StLoc[3](loc1: u64)\n\t2: LdU64(1)\n\t3: StLoc[22](loc20: u64)\n\t4: LdU64(0)\n\t5: StLoc[14](loc12: u64)\n\t6: LdU8(0)\n\t7: StLoc[12](loc10: u8)\n\t8: CopyLoc[3](loc1: u64)\n\t9: LdConst[3](U64: [3, 0, 0, 0, 0, 0, 0, 0])\n\t10: Eq\n\t11: BrFalse(16)\nB1:\n\t12: LdConst[14](U8: [4])\n\t13: LdU8(1)\n\t14: Sub\n\t15: StLoc[12](loc10: u8)\nB2:\n\t16: LdU8(0)\n\t17: StLoc[11](loc9: u8)\n\t18: CopyLoc[3](loc1: u64)\n\t19: LdConst[1](U64: [1, 0, 0, 0, 0, 0, 0, 0])\n\t20: Eq\n\t21: BrFalse(26)\nB3:\n\t22: LdConst[14](U8: [4])\n\t23: LdU8(1)\n\t24: Sub\n\t25: StLoc[11](loc9: u8)\nB4:\n\t26: LdU8(99)\n\t27: StLoc[4](loc2: u8)\n\t28: CopyLoc[0](Arg0: u64)\n\t29: CopyLoc[12](loc10: u8)\n\t30: CopyLoc[11](loc9: u8)\n\t31: CopyLoc[3](loc1: u64)\n\t32: Call spaces_at(u64, u8, u8, u64): u64 * u64 * u64 * u64\n\t33: StLoc[19](loc17: u64)\n\t34: StLoc[18](loc16: u64)\n\t35: StLoc[17](loc15: u64)\n\t36: StLoc[16](loc14: u64)\n\t37: CopyLoc[16](loc14: u64)\n\t38: StLoc[7](loc5: u64)\n\t39: CopyLoc[17](loc15: u64)\n\t40: StLoc[8](loc6: u64)\n\t41: CopyLoc[18](loc16: u64)\n\t42: StLoc[9](loc7: u64)\n\t43: CopyLoc[19](loc17: u64)\n\t44: StLoc[10](loc8: u64)\n\t45: LdU8(1)\n\t46: StLoc[20](loc18: u8)\n\t47: LdU8(2)\n\t48: StLoc[6](loc4: u8)\nB5:\n\t49: CopyLoc[6](loc4: u8)\n\t50: LdConst[14](U8: [4])\n\t51: Gt\n\t52: BrFalse(120)\nB6:\n\t53: MoveLoc[0](Arg0: u64)\n\t54: CopyLoc[12](loc10: u8)\n\t55: CopyLoc[11](loc9: u8)\n\t56: CopyLoc[16](loc14: u64)\n\t57: CopyLoc[17](loc15: u64)\n\t58: CopyLoc[18](loc16: u64)\n\t59: CopyLoc[19](loc17: u64)\n\t60: MoveLoc[7](loc5: u64)\n\t61: MoveLoc[16](loc14: u64)\n\t62: Neq\n\t63: MoveLoc[8](loc6: u64)\n\t64: MoveLoc[17](loc15: u64)\n\t65: Neq\n\t66: MoveLoc[9](loc7: u64)\n\t67: MoveLoc[18](loc16: u64)\n\t68: Neq\n\t69: MoveLoc[10](loc8: u64)\n\t70: MoveLoc[19](loc17: u64)\n\t71: Neq\n\t72: CopyLoc[3](loc1: u64)\n\t73: Call save_spaces(u64, u8, u8, u64, u64, u64, u64, bool, bool, bool, bool, u64): u64\n\t74: StLoc[0](Arg0: u64)\n\t75: MoveLoc[12](loc10: u8)\n\t76: CopyLoc[3](loc1: u64)\n\t77: Call next_row(u8, u64): u8\n\t78: StLoc[12](loc10: u8)\n\t79: MoveLoc[11](loc9: u8)\n\t80: CopyLoc[3](loc1: u64)\n\t81: Call next_column(u8, u64): u8\n\t82: StLoc[11](loc9: u8)\n\t83: CopyLoc[12](loc10: u8)\n\t84: Call valid_row(u8): bool\n\t85: Not\n\t86: BrFalse(90)\nB7:\n\t87: LdTrue\n\t88: StLoc[2](loc0: bool)\n\t89: Branch(94)\nB8:\n\t90: CopyLoc[11](loc9: u8)\n\t91: Call valid_column(u8): bool\n\t92: Not\n\t93: StLoc[2](loc0: bool)\nB9:\n\t94: MoveLoc[2](loc0: bool)\n\t95: BrFalse(97)\nB10:\n\t96: Branch(360)\nB11:\n\t97: CopyLoc[0](Arg0: u64)\n\t98: CopyLoc[12](loc10: u8)\n\t99: CopyLoc[11](loc9: u8)\n\t100: CopyLoc[3](loc1: u64)\n\t101: Call spaces_at(u64, u8, u8, u64): u64 * u64 * u64 * u64\n\t102: StLoc[19](loc17: u64)\n\t103: StLoc[18](loc16: u64)\n\t104: StLoc[17](loc15: u64)\n\t105: StLoc[16](loc14: u64)\n\t106: LdU8(99)\n\t107: StLoc[4](loc2: u8)\n\t108: CopyLoc[16](loc14: u64)\n\t109: StLoc[7](loc5: u64)\n\t110: CopyLoc[17](loc15: u64)\n\t111: StLoc[8](loc6: u64)\n\t112: CopyLoc[18](loc16: u64)\n\t113: StLoc[9](loc7: u64)\n\t114: CopyLoc[19](loc17: u64)\n\t115: StLoc[10](loc8: u64)\n\t116: LdU8(1)\n\t117: StLoc[20](loc18: u8)\n\t118: LdU8(2)\n\t119: StLoc[6](loc4: u8)\nB12:\n\t120: CopyLoc[20](loc18: u8)\n\t121: LdU8(1)\n\t122: Eq\n\t123: BrFalse(127)\nB13:\n\t124: CopyLoc[16](loc14: u64)\n\t125: StLoc[15](loc13: u64)\n\t126: Branch(143)\nB14:\n\t127: CopyLoc[20](loc18: u8)\n\t128: LdU8(2)\n\t129: Eq\n\t130: BrFalse(134)\nB15:\n\t131: CopyLoc[17](loc15: u64)\n\t132: StLoc[15](loc13: u64)\n\t133: Branch(143)\nB16:\n\t134: CopyLoc[20](loc18: u8)\n\t135: LdU8(3)\n\t136: Eq\n\t137: BrFalse(141)\nB17:\n\t138: CopyLoc[18](loc16: u64)\n\t139: StLoc[15](loc13: u64)\n\t140: Branch(143)\nB18:\n\t141: CopyLoc[19](loc17: u64)\n\t142: StLoc[15](loc13: u64)\nB19:\n\t143: CopyLoc[6](loc4: u8)\n\t144: LdU8(1)\n\t145: Eq\n\t146: BrFalse(150)\nB20:\n\t147: CopyLoc[16](loc14: u64)\n\t148: StLoc[5](loc3: u64)\n\t149: Branch(166)\nB21:\n\t150: CopyLoc[6](loc4: u8)\n\t151: LdU8(2)\n\t152: Eq\n\t153: BrFalse(157)\nB22:\n\t154: CopyLoc[17](loc15: u64)\n\t155: StLoc[5](loc3: u64)\n\t156: Branch(166)\nB23:\n\t157: CopyLoc[6](loc4: u8)\n\t158: LdU8(3)\n\t159: Eq\n\t160: BrFalse(164)\nB24:\n\t161: CopyLoc[18](loc16: u64)\n\t162: StLoc[5](loc3: u64)\n\t163: Branch(166)\nB25:\n\t164: CopyLoc[19](loc17: u64)\n\t165: StLoc[5](loc3: u64)\nB26:\n\t166: CopyLoc[15](loc13: u64)\n\t167: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t168: Eq\n\t169: BrFalse(173)\nB27:\n\t170: CopyLoc[20](loc18: u8)\n\t171: StLoc[4](loc2: u8)\n\t172: Branch(179)\nB28:\n\t173: CopyLoc[15](loc13: u64)\n\t174: CopyLoc[22](loc20: u64)\n\t175: Gt\n\t176: BrFalse(179)\nB29:\n\t177: CopyLoc[15](loc13: u64)\n\t178: StLoc[22](loc20: u64)\nB30:\n\t179: CopyLoc[5](loc3: u64)\n\t180: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t181: Eq\n\t182: BrFalse(190)\nB31:\n\t183: CopyLoc[4](loc2: u8)\n\t184: LdU8(99)\n\t185: Eq\n\t186: BrFalse(189)\nB32:\n\t187: CopyLoc[6](loc4: u8)\n\t188: StLoc[4](loc2: u8)\nB33:\n\t189: Branch(355)\nB34:\n\t190: CopyLoc[5](loc3: u64)\n\t191: CopyLoc[15](loc13: u64)\n\t192: Eq\n\t193: BrFalse(292)\nB35:\n\t194: LdU64(2)\n\t195: StLoc[13](loc11: u64)\n\t196: CopyLoc[15](loc13: u64)\n\t197: StLoc[21](loc19: u64)\nB36:\n\t198: CopyLoc[21](loc19: u64)\n\t199: LdU64(0)\n\t200: Gt\n\t201: BrFalse(212)\nB37:\n\t202: Branch(203)\nB38:\n\t203: MoveLoc[13](loc11: u64)\n\t204: LdU64(2)\n\t205: Mul\n\t206: StLoc[13](loc11: u64)\n\t207: MoveLoc[21](loc19: u64)\n\t208: LdU64(1)\n\t209: Sub\n\t210: StLoc[21](loc19: u64)\n\t211: Branch(198)\nB39:\n\t212: MoveLoc[14](loc12: u64)\n\t213: MoveLoc[13](loc11: u64)\n\t214: Add\n\t215: StLoc[14](loc12: u64)\n\t216: CopyLoc[15](loc13: u64)\n\t217: LdU64(1)\n\t218: Add\n\t219: CopyLoc[22](loc20: u64)\n\t220: Gt\n\t221: BrFalse(226)\nB40:\n\t222: CopyLoc[15](loc13: u64)\n\t223: LdU64(1)\n\t224: Add\n\t225: StLoc[22](loc20: u64)\nB41:\n\t226: CopyLoc[20](loc18: u8)\n\t227: LdU8(1)\n\t228: Eq\n\t229: BrFalse(235)\nB42:\n\t230: MoveLoc[15](loc13: u64)\n\t231: LdU64(1)\n\t232: Add\n\t233: StLoc[16](loc14: u64)\n\t234: Branch(257)\nB43:\n\t235: CopyLoc[20](loc18: u8)\n\t236: LdU8(2)\n\t237: Eq\n\t238: BrFalse(244)\nB44:\n\t239: MoveLoc[15](loc13: u64)\n\t240: LdU64(1)\n\t241: Add\n\t242: StLoc[17](loc15: u64)\n\t243: Branch(257)\nB45:\n\t244: MoveLoc[20](loc18: u8)\n\t245: LdU8(3)\n\t246: Eq\n\t247: BrFalse(253)\nB46:\n\t248: MoveLoc[15](loc13: u64)\n\t249: LdU64(1)\n\t250: Add\n\t251: StLoc[18](loc16: u64)\n\t252: Branch(257)\nB47:\n\t253: MoveLoc[15](loc13: u64)\n\t254: LdU64(1)\n\t255: Add\n\t256: StLoc[19](loc17: u64)\nB48:\n\t257: CopyLoc[6](loc4: u8)\n\t258: LdU8(1)\n\t259: Eq\n\t260: BrFalse(264)\nB49:\n\t261: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t262: StLoc[16](loc14: u64)\n\t263: Branch(280)\nB50:\n\t264: CopyLoc[6](loc4: u8)\n\t265: LdU8(2)\n\t266: Eq\n\t267: BrFalse(271)\nB51:\n\t268: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t269: StLoc[17](loc15: u64)\n\t270: Branch(280)\nB52:\n\t271: CopyLoc[6](loc4: u8)\n\t272: LdU8(3)\n\t273: Eq\n\t274: BrFalse(278)\nB53:\n\t275: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t276: StLoc[18](loc16: u64)\n\t277: Branch(280)\nB54:\n\t278: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t279: StLoc[19](loc17: u64)\nB55:\n\t280: CopyLoc[4](loc2: u8)\n\t281: LdU8(99)\n\t282: Neq\n\t283: BrFalse(287)\nB56:\n\t284: CopyLoc[4](loc2: u8)\n\t285: StLoc[20](loc18: u8)\n\t286: Branch(289)\nB57:\n\t287: MoveLoc[6](loc4: u8)\n\t288: StLoc[20](loc18: u8)\nB58:\n\t289: CopyLoc[20](loc18: u8)\n\t290: StLoc[6](loc4: u8)\n\t291: Branch(355)\nB59:\n\t292: CopyLoc[5](loc3: u64)\n\t293: MoveLoc[15](loc13: u64)\n\t294: Neq\n\t295: BrFalse(355)\nB60:\n\t296: CopyLoc[4](loc2: u8)\n\t297: LdU8(99)\n\t298: Neq\n\t299: BrFalse(353)\nB61:\n\t300: CopyLoc[4](loc2: u8)\n\t301: LdU8(1)\n\t302: Eq\n\t303: BrFalse(307)\nB62:\n\t304: MoveLoc[5](loc3: u64)\n\t305: StLoc[16](loc14: u64)\n\t306: Branch(323)\nB63:\n\t307: CopyLoc[4](loc2: u8)\n\t308: LdU8(2)\n\t309: Eq\n\t310: BrFalse(314)\nB64:\n\t311: MoveLoc[5](loc3: u64)\n\t312: StLoc[17](loc15: u64)\n\t313: Branch(323)\nB65:\n\t314: CopyLoc[4](loc2: u8)\n\t315: LdU8(3)\n\t316: Eq\n\t317: BrFalse(321)\nB66:\n\t318: MoveLoc[5](loc3: u64)\n\t319: StLoc[18](loc16: u64)\n\t320: Branch(323)\nB67:\n\t321: MoveLoc[5](loc3: u64)\n\t322: StLoc[19](loc17: u64)\nB68:\n\t323: CopyLoc[6](loc4: u8)\n\t324: LdU8(1)\n\t325: Eq\n\t326: BrFalse(330)\nB69:\n\t327: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t328: StLoc[16](loc14: u64)\n\t329: Branch(346)\nB70:\n\t330: CopyLoc[6](loc4: u8)\n\t331: LdU8(2)\n\t332: Eq\n\t333: BrFalse(337)\nB71:\n\t334: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t335: StLoc[17](loc15: u64)\n\t336: Branch(346)\nB72:\n\t337: MoveLoc[6](loc4: u8)\n\t338: LdU8(3)\n\t339: Eq\n\t340: BrFalse(344)\nB73:\n\t341: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t342: StLoc[18](loc16: u64)\n\t343: Branch(346)\nB74:\n\t344: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t345: StLoc[19](loc17: u64)\nB75:\n\t346: MoveLoc[4](loc2: u8)\n\t347: StLoc[20](loc18: u8)\n\t348: CopyLoc[20](loc18: u8)\n\t349: StLoc[6](loc4: u8)\n\t350: LdU8(99)\n\t351: StLoc[4](loc2: u8)\n\t352: Branch(355)\nB76:\n\t353: CopyLoc[6](loc4: u8)\n\t354: StLoc[20](loc18: u8)\nB77:\n\t355: MoveLoc[6](loc4: u8)\n\t356: LdU8(1)\n\t357: Add\n\t358: StLoc[6](loc4: u8)\n\t359: Branch(49)\nB78:\n\t360: MoveLoc[0](Arg0: u64)\n\t361: MoveLoc[22](loc20: u64)\n\t362: MoveLoc[14](loc12: u64)\n\t363: Ret\n}\nnext_row(Arg0: u8, Arg1: u64): u8 {\nB0:\n\t0: CopyLoc[1](Arg1: u64)\n\t1: LdConst[1](U64: [1, 0, 0, 0, 0, 0, 0, 0])\n\t2: Eq\n\t3: BrFalse(7)\nB1:\n\t4: LdTrue\n\t5: StLoc[2](loc0: bool)\n\t6: Branch(11)\nB2:\n\t7: MoveLoc[1](Arg1: u64)\n\t8: LdConst[0](U64: [0, 0, 0, 0, 0, 0, 0, 0])\n\t9: Eq\n\t10: StLoc[2](loc0: bool)\nB3:\n\t11: MoveLoc[2](loc0: bool)\n\t12: BrFalse(17)\nB4:\n\t13: MoveLoc[0](Arg0: u8)\n\t14: LdU8(1)\n\t15: Add\n\t16: Ret\nB5:\n\t17: MoveLoc[0](Arg0: u8)\n\t18: Ret\n}\nnext_column(Arg0: u8, Arg1: u64): u8 {\nB0:\n\t0: CopyLoc[1](Arg1: u64)\n\t1: LdConst[3](U64: [3, 0, 0, 0, 0, 0, 0, 0])\n\t2: Eq\n\t3: BrFalse(7)\nB1:\n\t4: LdTrue\n\t5: StLoc[2](loc0: bool)\n\t6: Branch(11)\nB2:\n\t7: MoveLoc[1](Arg1: u64)\n\t8: LdConst[2](U64: [2, 0, 0, 0, 0, 0, 0, 0])\n\t9: Eq\n\t10: StLoc[2](loc0: bool)\nB3:\n\t11: MoveLoc[2](loc0: bool)\n\t12: BrFalse(17)\nB4:\n\t13: MoveLoc[0](Arg0: u8)\n\t14: LdU8(1)\n\t15: Add\n\t16: Ret\nB5:\n\t17: MoveLoc[0](Arg0: u8)\n\t18: Ret\n}\nvalid_row(Arg0: u8): bool {\nB0:\n\t0: CopyLoc[0](Arg0: u8)\n\t1: LdU8(0)\n\t2: Ge\n\t3: BrFalse(9)\nB1:\n\t4: MoveLoc[0](Arg0: u8)\n\t5: LdConst[14](U8: [4])\n\t6: Lt\n\t7: StLoc[1](loc0: bool)\n\t8: Branch(11)\nB2:\n\t9: LdFalse\n\t10: StLoc[1](loc0: bool)\nB3:\n\t11: MoveLoc[1](loc0: bool)\n\t12: Ret\n}\nvalid_column(Arg0: u8): bool {\nB0:\n\t0: CopyLoc[0](Arg0: u8)\n\t1: LdU8(0)\n\t2: Ge\n\t3: BrFalse(9)\nB1:\n\t4: MoveLoc[0](Arg0: u8)\n\t5: LdConst[14](U8: [4])\n\t6: Lt\n\t7: StLoc[1](loc0: bool)\n\t8: Branch(11)\nB2:\n\t9: LdFalse\n\t10: StLoc[1](loc0: bool)\nB3:\n\t11: MoveLoc[1](loc0: bool)\n\t12: Ret\n}\n}",
                    "leaderboard_8192": "// Move bytecode v6\nmodule 72f9c76421170b5a797432ba9e1b3b2e2b7cf6faa26eb955396c773af2479e1e.leaderboard_8192 {\nuse 72f9c76421170b5a797432ba9e1b3b2e2b7cf6faa26eb955396c773af2479e1e::game_8192;\nuse 0000000000000000000000000000000000000000000000000000000000000001::vector;\nuse 0000000000000000000000000000000000000000000000000000000000000002::object;\nuse 0000000000000000000000000000000000000000000000000000000000000002::transfer;\nuse 0000000000000000000000000000000000000000000000000000000000000002::tx_context;\n\n\nstruct Leaderboard8192 has store, key {\n\tid: UID,\n\tmax_leaderboard_game_count: u64,\n\ttop_games: vector<TopGame8192>,\n\tmin_tile: u64,\n\tmin_score: u64\n}\nstruct TopGame8192 has copy, drop, store {\n\tgame_id: ID,\n\tleader_address: address,\n\ttop_tile: u64,\n\tscore: u64\n}\n\ninit(Arg0: &mut TxContext) {\nB0:\n\t0: MoveLoc[0](Arg0: &mut TxContext)\n\t1: Call create(&mut TxContext)\n\t2: Ret\n}\nentry public create(Arg0: &mut TxContext) {\nB0:\n\t0: MoveLoc[0](Arg0: &mut TxContext)\n\t1: Call object::new(&mut TxContext): UID\n\t2: LdU64(50)\n\t3: VecPack(16, 0)\n\t4: LdU64(0)\n\t5: LdU64(0)\n\t6: Pack[0](Leaderboard8192)\n\t7: Call transfer::share_object<Leaderboard8192>(Leaderboard8192)\n\t8: Ret\n}\nentry public submit_game(Arg0: &mut Game8192, Arg1: &mut Leaderboard8192) {\nL0:\tloc2: u64\nL1:\tloc3: u64\nL2:\tloc4: address\nL3:\tloc5: u64\nL4:\tloc6: TopGame8192\nL5:\tloc7: u64\nB0:\n\t0: CopyLoc[0](Arg0: &mut Game8192)\n\t1: FreezeRef\n\t2: Call game_8192::top_tile(&Game8192): &u64\n\t3: ReadRef\n\t4: StLoc[9](loc7: u64)\n\t5: CopyLoc[0](Arg0: &mut Game8192)\n\t6: FreezeRef\n\t7: Call game_8192::score(&Game8192): &u64\n\t8: ReadRef\n\t9: StLoc[7](loc5: u64)\n\t10: MoveLoc[9](loc7: u64)\n\t11: CopyLoc[1](Arg1: &mut Leaderboard8192)\n\t12: ImmBorrowField[0](Leaderboard8192.min_tile: u64)\n\t13: ReadRef\n\t14: Ge\n\t15: BrFalse(17)\nB1:\n\t16: Branch(23)\nB2:\n\t17: MoveLoc[1](Arg1: &mut Leaderboard8192)\n\t18: Pop\n\t19: MoveLoc[0](Arg0: &mut Game8192)\n\t20: Pop\n\t21: LdConst[1](U64: [1, 0, 0, 0, 0, 0, 0, 0])\n\t22: Abort\nB3:\n\t23: MoveLoc[7](loc5: u64)\n\t24: CopyLoc[1](Arg1: &mut Leaderboard8192)\n\t25: ImmBorrowField[1](Leaderboard8192.min_score: u64)\n\t26: ReadRef\n\t27: Gt\n\t28: BrFalse(30)\nB4:\n\t29: Branch(36)\nB5:\n\t30: MoveLoc[1](Arg1: &mut Leaderboard8192)\n\t31: Pop\n\t32: MoveLoc[0](Arg0: &mut Game8192)\n\t33: Pop\n\t34: LdConst[2](U64: [2, 0, 0, 0, 0, 0, 0, 0])\n\t35: Abort\nB6:\n\t36: CopyLoc[0](Arg0: &mut Game8192)\n\t37: FreezeRef\n\t38: Call game_8192::player(&Game8192): &address\n\t39: ReadRef\n\t40: StLoc[6](loc4: address)\n\t41: CopyLoc[0](Arg0: &mut Game8192)\n\t42: FreezeRef\n\t43: Call game_8192::id(&Game8192): ID\n\t44: StLoc[2](loc0: ID)\n\t45: MoveLoc[6](loc4: address)\n\t46: StLoc[3](loc1: address)\n\t47: CopyLoc[0](Arg0: &mut Game8192)\n\t48: FreezeRef\n\t49: Call game_8192::score(&Game8192): &u64\n\t50: ReadRef\n\t51: StLoc[4](loc2: u64)\n\t52: MoveLoc[0](Arg0: &mut Game8192)\n\t53: FreezeRef\n\t54: Call game_8192::top_tile(&Game8192): &u64\n\t55: ReadRef\n\t56: StLoc[5](loc3: u64)\n\t57: MoveLoc[2](loc0: ID)\n\t58: MoveLoc[3](loc1: address)\n\t59: MoveLoc[5](loc3: u64)\n\t60: MoveLoc[4](loc2: u64)\n\t61: Pack[1](TopGame8192)\n\t62: StLoc[8](loc6: TopGame8192)\n\t63: MoveLoc[1](Arg1: &mut Leaderboard8192)\n\t64: MoveLoc[8](loc6: TopGame8192)\n\t65: Call add_top_game_sorted(&mut Leaderboard8192, TopGame8192)\n\t66: Ret\n}\npublic game_count(Arg0: &Leaderboard8192): u64 {\nB0:\n\t0: MoveLoc[0](Arg0: &Leaderboard8192)\n\t1: ImmBorrowField[2](Leaderboard8192.top_games: vector<TopGame8192>)\n\t2: VecLen(16)\n\t3: Ret\n}\npublic top_games(Arg0: &Leaderboard8192): &vector<TopGame8192> {\nB0:\n\t0: MoveLoc[0](Arg0: &Leaderboard8192)\n\t1: ImmBorrowField[2](Leaderboard8192.top_games: vector<TopGame8192>)\n\t2: Ret\n}\npublic top_game_at(Arg0: &Leaderboard8192, Arg1: u64): &TopGame8192 {\nB0:\n\t0: MoveLoc[0](Arg0: &Leaderboard8192)\n\t1: ImmBorrowField[2](Leaderboard8192.top_games: vector<TopGame8192>)\n\t2: MoveLoc[1](Arg1: u64)\n\t3: VecImmBorrow(16)\n\t4: Ret\n}\npublic top_game_at_has_id(Arg0: &Leaderboard8192, Arg1: u64, Arg2: ID): bool {\nB0:\n\t0: MoveLoc[0](Arg0: &Leaderboard8192)\n\t1: MoveLoc[1](Arg1: u64)\n\t2: Call top_game_at(&Leaderboard8192, u64): &TopGame8192\n\t3: ImmBorrowField[3](TopGame8192.game_id: ID)\n\t4: ReadRef\n\t5: MoveLoc[2](Arg2: ID)\n\t6: Eq\n\t7: Ret\n}\npublic top_game_game_id(Arg0: &TopGame8192): ID {\nB0:\n\t0: MoveLoc[0](Arg0: &TopGame8192)\n\t1: ImmBorrowField[3](TopGame8192.game_id: ID)\n\t2: ReadRef\n\t3: Ret\n}\npublic top_game_top_tile(Arg0: &TopGame8192): &u64 {\nB0:\n\t0: MoveLoc[0](Arg0: &TopGame8192)\n\t1: ImmBorrowField[4](TopGame8192.top_tile: u64)\n\t2: Ret\n}\npublic top_game_score(Arg0: &TopGame8192): &u64 {\nB0:\n\t0: MoveLoc[0](Arg0: &TopGame8192)\n\t1: ImmBorrowField[5](TopGame8192.score: u64)\n\t2: Ret\n}\npublic min_tile(Arg0: &Leaderboard8192): &u64 {\nB0:\n\t0: MoveLoc[0](Arg0: &Leaderboard8192)\n\t1: ImmBorrowField[0](Leaderboard8192.min_tile: u64)\n\t2: Ret\n}\npublic min_score(Arg0: &Leaderboard8192): &u64 {\nB0:\n\t0: MoveLoc[0](Arg0: &Leaderboard8192)\n\t1: ImmBorrowField[1](Leaderboard8192.min_score: u64)\n\t2: Ret\n}\nadd_top_game_sorted(Arg0: &mut Leaderboard8192, Arg1: TopGame8192) {\nL0:\tloc2: u64\nL1:\tloc3: vector<TopGame8192>\nL2:\tloc4: u64\nB0:\n\t0: CopyLoc[0](Arg0: &mut Leaderboard8192)\n\t1: ImmBorrowField[2](Leaderboard8192.top_games: vector<TopGame8192>)\n\t2: ReadRef\n\t3: StLoc[5](loc3: vector<TopGame8192>)\n\t4: ImmBorrowLoc[5](loc3: vector<TopGame8192>)\n\t5: VecLen(16)\n\t6: StLoc[6](loc4: u64)\n\t7: LdU64(0)\n\t8: StLoc[4](loc2: u64)\nB1:\n\t9: CopyLoc[4](loc2: u64)\n\t10: CopyLoc[6](loc4: u64)\n\t11: Lt\n\t12: BrFalse(36)\nB2:\n\t13: Branch(14)\nB3:\n\t14: ImmBorrowLoc[5](loc3: vector<TopGame8192>)\n\t15: CopyLoc[4](loc2: u64)\n\t16: VecImmBorrow(16)\n\t17: StLoc[3](loc1: &TopGame8192)\n\t18: ImmBorrowLoc[1](Arg1: TopGame8192)\n\t19: ImmBorrowField[3](TopGame8192.game_id: ID)\n\t20: ReadRef\n\t21: MoveLoc[3](loc1: &TopGame8192)\n\t22: ImmBorrowField[3](TopGame8192.game_id: ID)\n\t23: ReadRef\n\t24: Eq\n\t25: BrFalse(31)\nB4:\n\t26: MutBorrowLoc[5](loc3: vector<TopGame8192>)\n\t27: MoveLoc[4](loc2: u64)\n\t28: Call vector::swap_remove<TopGame8192>(&mut vector<TopGame8192>, u64): TopGame8192\n\t29: Pop\n\t30: Branch(36)\nB5:\n\t31: MoveLoc[4](loc2: u64)\n\t32: LdU64(1)\n\t33: Add\n\t34: StLoc[4](loc2: u64)\n\t35: Branch(9)\nB6:\n\t36: MutBorrowLoc[5](loc3: vector<TopGame8192>)\n\t37: MoveLoc[1](Arg1: TopGame8192)\n\t38: VecPushBack(16)\n\t39: MoveLoc[5](loc3: vector<TopGame8192>)\n\t40: Call merge_sort_top_games(vector<TopGame8192>): vector<TopGame8192>\n\t41: StLoc[5](loc3: vector<TopGame8192>)\n\t42: ImmBorrowLoc[5](loc3: vector<TopGame8192>)\n\t43: VecLen(16)\n\t44: StLoc[6](loc4: u64)\n\t45: CopyLoc[6](loc4: u64)\n\t46: CopyLoc[0](Arg0: &mut Leaderboard8192)\n\t47: ImmBorrowField[6](Leaderboard8192.max_leaderboard_game_count: u64)\n\t48: ReadRef\n\t49: Gt\n\t50: BrFalse(58)\nB7:\n\t51: MutBorrowLoc[5](loc3: vector<TopGame8192>)\n\t52: VecPopBack(16)\n\t53: Pop\n\t54: MoveLoc[6](loc4: u64)\n\t55: LdU64(1)\n\t56: Sub\n\t57: StLoc[6](loc4: u64)\nB8:\n\t58: CopyLoc[6](loc4: u64)\n\t59: CopyLoc[0](Arg0: &mut Leaderboard8192)\n\t60: ImmBorrowField[6](Leaderboard8192.max_leaderboard_game_count: u64)\n\t61: ReadRef\n\t62: Ge\n\t63: BrFalse(82)\nB9:\n\t64: ImmBorrowLoc[5](loc3: vector<TopGame8192>)\n\t65: MoveLoc[6](loc4: u64)\n\t66: LdU64(1)\n\t67: Sub\n\t68: VecImmBorrow(16)\n\t69: StLoc[2](loc0: &TopGame8192)\n\t70: CopyLoc[2](loc0: &TopGame8192)\n\t71: ImmBorrowField[4](TopGame8192.top_tile: u64)\n\t72: ReadRef\n\t73: CopyLoc[0](Arg0: &mut Leaderboard8192)\n\t74: MutBorrowField[0](Leaderboard8192.min_tile: u64)\n\t75: WriteRef\n\t76: MoveLoc[2](loc0: &TopGame8192)\n\t77: ImmBorrowField[5](TopGame8192.score: u64)\n\t78: ReadRef\n\t79: CopyLoc[0](Arg0: &mut Leaderboard8192)\n\t80: MutBorrowField[1](Leaderboard8192.min_score: u64)\n\t81: WriteRef\nB10:\n\t82: MoveLoc[5](loc3: vector<TopGame8192>)\n\t83: MoveLoc[0](Arg0: &mut Leaderboard8192)\n\t84: MutBorrowField[2](Leaderboard8192.top_games: vector<TopGame8192>)\n\t85: WriteRef\n\t86: Ret\n}\npublic(friend) merge_sort_top_games(Arg0: vector<TopGame8192>): vector<TopGame8192> {\nL0:\tloc1: u64\nL1:\tloc2: vector<TopGame8192>\nL2:\tloc3: vector<TopGame8192>\nL3:\tloc4: vector<TopGame8192>\nL4:\tloc5: u64\nB0:\n\t0: ImmBorrowLoc[0](Arg0: vector<TopGame8192>)\n\t1: VecLen(16)\n\t2: StLoc[6](loc5: u64)\n\t3: CopyLoc[6](loc5: u64)\n\t4: LdU64(1)\n\t5: Eq\n\t6: BrFalse(9)\nB1:\n\t7: MoveLoc[0](Arg0: vector<TopGame8192>)\n\t8: Ret\nB2:\n\t9: MoveLoc[6](loc5: u64)\n\t10: LdU64(2)\n\t11: Div\n\t12: StLoc[2](loc1: u64)\n\t13: VecPack(16, 0)\n\t14: StLoc[3](loc2: vector<TopGame8192>)\n\t15: LdU64(0)\n\t16: StLoc[1](loc0: u64)\nB3:\n\t17: CopyLoc[1](loc0: u64)\n\t18: CopyLoc[2](loc1: u64)\n\t19: Lt\n\t20: BrFalse(31)\nB4:\n\t21: Branch(22)\nB5:\n\t22: MutBorrowLoc[3](loc2: vector<TopGame8192>)\n\t23: MutBorrowLoc[0](Arg0: vector<TopGame8192>)\n\t24: VecPopBack(16)\n\t25: VecPushBack(16)\n\t26: MoveLoc[1](loc0: u64)\n\t27: LdU64(1)\n\t28: Add\n\t29: StLoc[1](loc0: u64)\n\t30: Branch(17)\nB6:\n\t31: MoveLoc[0](Arg0: vector<TopGame8192>)\n\t32: Call merge_sort_top_games(vector<TopGame8192>): vector<TopGame8192>\n\t33: StLoc[4](loc3: vector<TopGame8192>)\n\t34: MoveLoc[3](loc2: vector<TopGame8192>)\n\t35: Call merge_sort_top_games(vector<TopGame8192>): vector<TopGame8192>\n\t36: StLoc[5](loc4: vector<TopGame8192>)\n\t37: MoveLoc[4](loc3: vector<TopGame8192>)\n\t38: MoveLoc[5](loc4: vector<TopGame8192>)\n\t39: Call merge(vector<TopGame8192>, vector<TopGame8192>): vector<TopGame8192>\n\t40: Ret\n}\npublic(friend) merge(Arg0: vector<TopGame8192>, Arg1: vector<TopGame8192>): vector<TopGame8192> {\nL0:\tloc2: vector<TopGame8192>\nL1:\tloc3: &TopGame8192\nB0:\n\t0: MutBorrowLoc[0](Arg0: vector<TopGame8192>)\n\t1: Call vector::reverse<TopGame8192>(&mut vector<TopGame8192>)\n\t2: MutBorrowLoc[1](Arg1: vector<TopGame8192>)\n\t3: Call vector::reverse<TopGame8192>(&mut vector<TopGame8192>)\n\t4: VecPack(16, 0)\n\t5: StLoc[4](loc2: vector<TopGame8192>)\nB1:\n\t6: ImmBorrowLoc[0](Arg0: vector<TopGame8192>)\n\t7: Call vector::is_empty<TopGame8192>(&vector<TopGame8192>): bool\n\t8: Not\n\t9: BrFalse(16)\nB2:\n\t10: Branch(11)\nB3:\n\t11: ImmBorrowLoc[1](Arg1: vector<TopGame8192>)\n\t12: Call vector::is_empty<TopGame8192>(&vector<TopGame8192>): bool\n\t13: Not\n\t14: StLoc[2](loc0: bool)\n\t15: Branch(18)\nB4:\n\t16: LdFalse\n\t17: StLoc[2](loc0: bool)\nB5:\n\t18: MoveLoc[2](loc0: bool)\n\t19: BrFalse(86)\nB6:\n\t20: ImmBorrowLoc[0](Arg0: vector<TopGame8192>)\n\t21: ImmBorrowLoc[0](Arg0: vector<TopGame8192>)\n\t22: VecLen(16)\n\t23: LdU64(1)\n\t24: Sub\n\t25: VecImmBorrow(16)\n\t26: StLoc[3](loc1: &TopGame8192)\n\t27: ImmBorrowLoc[1](Arg1: vector<TopGame8192>)\n\t28: ImmBorrowLoc[1](Arg1: vector<TopGame8192>)\n\t29: VecLen(16)\n\t30: LdU64(1)\n\t31: Sub\n\t32: VecImmBorrow(16)\n\t33: StLoc[5](loc3: &TopGame8192)\n\t34: CopyLoc[3](loc1: &TopGame8192)\n\t35: ImmBorrowField[4](TopGame8192.top_tile: u64)\n\t36: ReadRef\n\t37: CopyLoc[5](loc3: &TopGame8192)\n\t38: ImmBorrowField[4](TopGame8192.top_tile: u64)\n\t39: ReadRef\n\t40: Gt\n\t41: BrFalse(51)\nB7:\n\t42: MoveLoc[5](loc3: &TopGame8192)\n\t43: Pop\n\t44: MoveLoc[3](loc1: &TopGame8192)\n\t45: Pop\n\t46: MutBorrowLoc[4](loc2: vector<TopGame8192>)\n\t47: MutBorrowLoc[0](Arg0: vector<TopGame8192>)\n\t48: VecPopBack(16)\n\t49: VecPushBack(16)\n\t50: Branch(85)\nB8:\n\t51: CopyLoc[3](loc1: &TopGame8192)\n\t52: ImmBorrowField[4](TopGame8192.top_tile: u64)\n\t53: ReadRef\n\t54: CopyLoc[5](loc3: &TopGame8192)\n\t55: ImmBorrowField[4](TopGame8192.top_tile: u64)\n\t56: ReadRef\n\t57: Lt\n\t58: BrFalse(68)\nB9:\n\t59: MoveLoc[5](loc3: &TopGame8192)\n\t60: Pop\n\t61: MoveLoc[3](loc1: &TopGame8192)\n\t62: Pop\n\t63: MutBorrowLoc[4](loc2: vector<TopGame8192>)\n\t64: MutBorrowLoc[1](Arg1: vector<TopGame8192>)\n\t65: VecPopBack(16)\n\t66: VecPushBack(16)\n\t67: Branch(85)\nB10:\n\t68: MoveLoc[3](loc1: &TopGame8192)\n\t69: ImmBorrowField[5](TopGame8192.score: u64)\n\t70: ReadRef\n\t71: MoveLoc[5](loc3: &TopGame8192)\n\t72: ImmBorrowField[5](TopGame8192.score: u64)\n\t73: ReadRef\n\t74: Gt\n\t75: BrFalse(81)\nB11:\n\t76: MutBorrowLoc[4](loc2: vector<TopGame8192>)\n\t77: MutBorrowLoc[0](Arg0: vector<TopGame8192>)\n\t78: VecPopBack(16)\n\t79: VecPushBack(16)\n\t80: Branch(85)\nB12:\n\t81: MutBorrowLoc[4](loc2: vector<TopGame8192>)\n\t82: MutBorrowLoc[1](Arg1: vector<TopGame8192>)\n\t83: VecPopBack(16)\n\t84: VecPushBack(16)\nB13:\n\t85: Branch(6)\nB14:\n\t86: MutBorrowLoc[0](Arg0: vector<TopGame8192>)\n\t87: Call vector::reverse<TopGame8192>(&mut vector<TopGame8192>)\n\t88: MutBorrowLoc[1](Arg1: vector<TopGame8192>)\n\t89: Call vector::reverse<TopGame8192>(&mut vector<TopGame8192>)\n\t90: MutBorrowLoc[4](loc2: vector<TopGame8192>)\n\t91: MoveLoc[0](Arg0: vector<TopGame8192>)\n\t92: Call vector::append<TopGame8192>(&mut vector<TopGame8192>, vector<TopGame8192>)\n\t93: MutBorrowLoc[4](loc2: vector<TopGame8192>)\n\t94: MoveLoc[1](Arg1: vector<TopGame8192>)\n\t95: Call vector::append<TopGame8192>(&mut vector<TopGame8192>, vector<TopGame8192>)\n\t96: MoveLoc[4](loc2: vector<TopGame8192>)\n\t97: Ret\n}\n}"
                }
            }
        }
    },
    "id": 1
}
Language
Click Try It! to start a request and see the response here!