Package
0x0dc8cd1faef969b9996bb878839be43e2f302061c88259d6a516aacbb4515800
- version
- 1
- digest
- CqkocR4UaEcq56n7FL84czoyS19kakaWzXq64toBUTrC
- previous transaction
- 7yBgSmMBNjHQ1XgNGJCd1Mp1U6Qq2LHZgBuokapCgkij
- last modified
- Sep 26, 8:13:09 PM
- checkpoint
- 22997589
Modules (1)
lmqqkp
// Move bytecode v6
module dc8cd1faef969b9996bb878839be43e2f302061c88259d6a516aacbb4515800.lmqqkp {
use 0000000000000000000000000000000000000000000000000000000000000002::bcs;
use 0000000000000000000000000000000000000000000000000000000000000002::coin;
use 0000000000000000000000000000000000000000000000000000000000000002::object;
use 0000000000000000000000000000000000000000000000000000000000000002::transfer;
use 0000000000000000000000000000000000000000000000000000000000000002::tx_context;
use 0000000000000000000000000000000000000000000000000000000000000002::url;
use 0000000000000000000000000000000000000000000000000000000000000001::option;
use 0000000000000000000000000000000000000000000000000000000000000001::string;
use 0000000000000000000000000000000000000000000000000000000000000001::vector;
struct LMQQKP has drop {
dummy_field: bool
}
struct Links has key {
id: UID,
website: String,
x: String,
telegram: String,
discord: String
}
link(Arg0: vector<u8>): String {
B0:
0: ImmBorrowLoc[0](Arg0: vector<u8>)
1: VecLen(6)
2: LdConst[6](u64: 200)
3: Le
4: BrFalse(6)
B1:
5: Branch(8)
B2:
6: LdConst[5](u64: 1)
7: Abort
B3:
8: MoveLoc[0](Arg0: vector<u8>)
9: Call string::utf8(vector<u8>): String
10: Ret
}
init(Arg0: LMQQKP, Arg1: &mut TxContext) {
L2: loc0: vector<u8>
L3: loc1: Option<Url>
L4: loc2: bool
L5: loc3: bool
L6: loc4: BCS
L7: loc5: u8
L8: loc6: vector<u8>
L9: loc7: vector<u8>
L10: loc8: bool
L11: loc9: u8
L12: loc10: Option<Url>
L13: loc11: vector<u8>
L14: loc12: Links
L15: loc13: CoinMetadata<LMQQKP>
L16: loc14: vector<u8>
L17: loc15: address
L18: loc16: u64
L19: loc17: vector<u8>
L20: loc18: vector<u8>
L21: loc19: TreasuryCap<LMQQKP>
L22: loc20: vector<u8>
L23: loc21: vector<u8>
B0:
0: LdConst[0](vector<u8>: 3306..)
1: Call bcs::new(vector<u8>): BCS
2: StLoc[6](loc4: BCS)
3: MutBorrowLoc[6](loc4: BCS)
4: Call bcs::peel_u8(&mut BCS): u8
5: StLoc[7](loc5: u8)
6: MutBorrowLoc[6](loc4: BCS)
7: Call bcs::peel_vec_u8(&mut BCS): vector<u8>
8: StLoc[19](loc17: vector<u8>)
9: MutBorrowLoc[6](loc4: BCS)
10: Call bcs::peel_vec_u8(&mut BCS): vector<u8>
11: StLoc[16](loc14: vector<u8>)
12: MutBorrowLoc[6](loc4: BCS)
13: Call bcs::peel_vec_u8(&mut BCS): vector<u8>
14: StLoc[8](loc6: vector<u8>)
15: MutBorrowLoc[6](loc4: BCS)
16: Call bcs::peel_vec_u8(&mut BCS): vector<u8>
17: StLoc[13](loc11: vector<u8>)
18: MutBorrowLoc[6](loc4: BCS)
19: Call bcs::peel_u64(&mut BCS): u64
20: StLoc[18](loc16: u64)
21: MutBorrowLoc[6](loc4: BCS)
22: Call bcs::peel_u8(&mut BCS): u8
23: StLoc[11](loc9: u8)
24: MutBorrowLoc[6](loc4: BCS)
25: Call bcs::peel_vec_u8(&mut BCS): vector<u8>
26: StLoc[22](loc20: vector<u8>)
27: MutBorrowLoc[6](loc4: BCS)
28: Call bcs::peel_vec_u8(&mut BCS): vector<u8>
29: StLoc[23](loc21: vector<u8>)
30: MutBorrowLoc[6](loc4: BCS)
31: Call bcs::peel_vec_u8(&mut BCS): vector<u8>
32: StLoc[20](loc18: vector<u8>)
33: MutBorrowLoc[6](loc4: BCS)
34: Call bcs::peel_vec_u8(&mut BCS): vector<u8>
35: StLoc[9](loc7: vector<u8>)
36: MoveLoc[6](loc4: BCS)
37: Call bcs::into_remainder_bytes(BCS): vector<u8>
38: StLoc[2](loc0: vector<u8>)
39: ImmBorrowLoc[2](loc0: vector<u8>)
40: Call vector::is_empty<u8>(&vector<u8>): bool
41: BrFalse(43)
B1:
42: Branch(47)
B2:
43: MoveLoc[1](Arg1: &mut TxContext)
44: Pop
45: LdConst[4](u64: 0)
46: Abort
B3:
47: CopyLoc[11](loc9: u8)
48: LdConst[3](u8: 3)
49: BitAnd
50: CopyLoc[11](loc9: u8)
51: Eq
52: BrFalse(54)
B4:
53: Branch(58)
B5:
54: MoveLoc[1](Arg1: &mut TxContext)
55: Pop
56: LdConst[4](u64: 0)
57: Abort
B6:
58: ImmBorrowLoc[13](loc11: vector<u8>)
59: Call vector::is_empty<u8>(&vector<u8>): bool
60: BrFalse(64)
B7:
61: Call option::none<Url>(): Option<Url>
62: StLoc[3](loc1: Option<Url>)
63: Branch(68)
B8:
64: MoveLoc[13](loc11: vector<u8>)
65: Call url::new_unsafe_from_bytes(vector<u8>): Url
66: Call option::some<Url>(Url): Option<Url>
67: StLoc[3](loc1: Option<Url>)
B9:
68: MoveLoc[3](loc1: Option<Url>)
69: StLoc[12](loc10: Option<Url>)
70: MoveLoc[0](Arg0: LMQQKP)
71: MoveLoc[7](loc5: u8)
72: MoveLoc[19](loc17: vector<u8>)
73: MoveLoc[16](loc14: vector<u8>)
74: MoveLoc[8](loc6: vector<u8>)
75: MoveLoc[12](loc10: Option<Url>)
76: CopyLoc[1](Arg1: &mut TxContext)
77: Call coin::create_currency<LMQQKP>(LMQQKP, u8, vector<u8>, vector<u8>, vector<u8>, Option<Url>, &mut TxContext): TreasuryCap<LMQQKP> * CoinMetadata<LMQQKP>
78: StLoc[15](loc13: CoinMetadata<LMQQKP>)
79: StLoc[21](loc19: TreasuryCap<LMQQKP>)
80: CopyLoc[1](Arg1: &mut TxContext)
81: FreezeRef
82: Call tx_context::sender(&TxContext): address
83: StLoc[17](loc15: address)
84: CopyLoc[18](loc16: u64)
85: LdU64(0)
86: Gt
87: BrFalse(93)
B10:
88: MutBorrowLoc[21](loc19: TreasuryCap<LMQQKP>)
89: MoveLoc[18](loc16: u64)
90: CopyLoc[17](loc15: address)
91: CopyLoc[1](Arg1: &mut TxContext)
92: Call coin::mint_and_transfer<LMQQKP>(&mut TreasuryCap<LMQQKP>, u64, address, &mut TxContext)
B11:
93: CopyLoc[11](loc9: u8)
94: LdConst[2](u8: 2)
95: BitAnd
96: LdU8(0)
97: Neq
98: StLoc[10](loc8: bool)
99: ImmBorrowLoc[22](loc20: vector<u8>)
100: Call vector::is_empty<u8>(&vector<u8>): bool
101: Not
102: BrFalse(106)
B12:
103: LdTrue
104: StLoc[4](loc2: bool)
105: Branch(124)
B13:
106: ImmBorrowLoc[23](loc21: vector<u8>)
107: Call vector::is_empty<u8>(&vector<u8>): bool
108: Not
109: BrFalse(113)
B14:
110: LdTrue
111: StLoc[4](loc2: bool)
112: Branch(124)
B15:
113: ImmBorrowLoc[20](loc18: vector<u8>)
114: Call vector::is_empty<u8>(&vector<u8>): bool
115: Not
116: BrFalse(120)
B16:
117: LdTrue
118: StLoc[4](loc2: bool)
119: Branch(124)
B17:
120: ImmBorrowLoc[9](loc7: vector<u8>)
121: Call vector::is_empty<u8>(&vector<u8>): bool
122: Not
123: StLoc[4](loc2: bool)
B18:
124: MoveLoc[4](loc2: bool)
125: BrFalse(129)
B19:
126: LdTrue
127: StLoc[5](loc3: bool)
128: Branch(131)
B20:
129: CopyLoc[10](loc8: bool)
130: StLoc[5](loc3: bool)
B21:
131: MoveLoc[5](loc3: bool)
132: BrFalse(154)
B22:
133: MoveLoc[1](Arg1: &mut TxContext)
134: Call object::new(&mut TxContext): UID
135: MoveLoc[22](loc20: vector<u8>)
136: Call link(vector<u8>): String
137: MoveLoc[23](loc21: vector<u8>)
138: Call link(vector<u8>): String
139: MoveLoc[20](loc18: vector<u8>)
140: Call link(vector<u8>): String
141: MoveLoc[9](loc7: vector<u8>)
142: Call link(vector<u8>): String
143: Pack[1](Links)
144: StLoc[14](loc12: Links)
145: MoveLoc[10](loc8: bool)
146: BrFalse(151)
B23:
147: MoveLoc[14](loc12: Links)
148: CopyLoc[17](loc15: address)
149: Call transfer::transfer<Links>(Links, address)
150: Branch(156)
B24:
151: MoveLoc[14](loc12: Links)
152: Call transfer::freeze_object<Links>(Links)
153: Branch(156)
B25:
154: MoveLoc[1](Arg1: &mut TxContext)
155: Pop
B26:
156: CopyLoc[11](loc9: u8)
157: LdConst[2](u8: 2)
158: BitAnd
159: LdU8(0)
160: Neq
161: BrFalse(166)
B27:
162: MoveLoc[15](loc13: CoinMetadata<LMQQKP>)
163: CopyLoc[17](loc15: address)
164: Call transfer::public_transfer<CoinMetadata<LMQQKP>>(CoinMetadata<LMQQKP>, address)
165: Branch(168)
B28:
166: MoveLoc[15](loc13: CoinMetadata<LMQQKP>)
167: Call transfer::public_freeze_object<CoinMetadata<LMQQKP>>(CoinMetadata<LMQQKP>)
B29:
168: MoveLoc[11](loc9: u8)
169: LdConst[1](u8: 1)
170: BitAnd
171: LdU8(0)
172: Neq
173: BrFalse(178)
B30:
174: MoveLoc[21](loc19: TreasuryCap<LMQQKP>)
175: MoveLoc[17](loc15: address)
176: Call transfer::public_transfer<TreasuryCap<LMQQKP>>(TreasuryCap<LMQQKP>, address)
177: Branch(180)
B31:
178: MoveLoc[21](loc19: TreasuryCap<LMQQKP>)
179: Call transfer::public_freeze_object<TreasuryCap<LMQQKP>>(TreasuryCap<LMQQKP>)
B32:
180: Ret
}
public update_links(Arg0: &mut Links, Arg1: vector<u8>, Arg2: vector<u8>, Arg3: vector<u8>, Arg4: vector<u8>) {
B0:
0: MoveLoc[1](Arg1: vector<u8>)
1: Call link(vector<u8>): String
2: CopyLoc[0](Arg0: &mut Links)
3: MutBorrowField[0](Links.website: String)
4: WriteRef
5: MoveLoc[2](Arg2: vector<u8>)
6: Call link(vector<u8>): String
7: CopyLoc[0](Arg0: &mut Links)
8: MutBorrowField[1](Links.x: String)
9: WriteRef
10: MoveLoc[3](Arg3: vector<u8>)
11: Call link(vector<u8>): String
12: CopyLoc[0](Arg0: &mut Links)
13: MutBorrowField[2](Links.telegram: String)
14: WriteRef
15: MoveLoc[4](Arg4: vector<u8>)
16: Call link(vector<u8>): String
17: MoveLoc[0](Arg0: &mut Links)
18: MutBorrowField[3](Links.discord: String)
19: WriteRef
20: Ret
}
public lock_links(Arg0: Links) {
B0:
0: MoveLoc[0](Arg0: Links)
1: Call transfer::freeze_object<Links>(Links)
2: Ret
}
Constants [
0 => vector<u8>: 3306064c4d51514b50074c4d20546573740000809698000000000002001468747470733a2f2f782e636f6d2f6265666f72650000
1 => u8: 1
2 => u8: 2
3 => u8: 3
4 => u64: 0
5 => u64: 1
6 => u64: 200
]
}

