The explorer is out of sync. The last synced block is 526 hours ago. Current block height: explorer: 2206528 / node: 2542549 / ref: 2492275
import credits.aleo; program aleo_name_service_registry_v1.aleo; struct BaseURI: data0 as u128; data1 as u128; data2 as u128; data3 as u128; struct ResolverIndex: name as field; category as u128; version as u64; struct Name: name as [u128; 4u32]; parent as field; struct NameStruct: name as [u128; 4u32]; parent as field; resolver as u128; record NFT: owner as address.private; data as field.private; edition as scalar.private; record NFT_ownership: owner as address.private; nft_owner as address.private; data as field.private; edition as scalar.private; mapping nft_owners: key as field.public; value as address.public; mapping names: key as field.public; value as NameStruct.public; mapping primary_names: key as address.public; value as field.public; mapping resolvers: key as ResolverIndex.public; value as [u128; 4u32].public; mapping name_versions: key as field.public; value as u64.public; mapping domain_credits: key as field.public; value as u64.public; mapping general_settings: key as u8.public; value as u128.public; mapping toggle_settings: key as u8.public; value as u32.public; closure validate_name: input r0 as [u128; 4u32]; add r0[0] r0[1] into r1; add r1 r0[2] into r2; add r2 r0[3] into r3; is.neq r3 0u128 into r4; assert.eq r4 true; mul 0u8 8u8 into r5; shr r0[0] r5 into r6; and r6 255u128 into r7; is.eq r7 0u128 into r8; is.eq r7 45u128 into r9; or r8 r9 into r10; is.eq r7 95u128 into r11; or r10 r11 into r12; gte r7 48u128 into r13; lte r7 57u128 into r14; and r13 r14 into r15; or r12 r15 into r16; gte r7 97u128 into r17; lte r7 122u128 into r18; and r17 r18 into r19; or r16 r19 into r20; not r20 into r21; mul 1u8 8u8 into r22; shr r0[0] r22 into r23; and r23 255u128 into r24; is.eq r24 0u128 into r25; is.eq r24 45u128 into r26; or r25 r26 into r27; is.eq r24 95u128 into r28; or r27 r28 into r29; gte r24 48u128 into r30; lte r24 57u128 into r31; and r30 r31 into r32; or r29 r32 into r33; gte r24 97u128 into r34; lte r24 122u128 into r35; and r34 r35 into r36; or r33 r36 into r37; not r37 into r38; mul 2u8 8u8 into r39; shr r0[0] r39 into r40; and r40 255u128 into r41; is.eq r41 0u128 into r42; is.eq r41 45u128 into r43; or r42 r43 into r44; is.eq r41 95u128 into r45; or r44 r45 into r46; gte r41 48u128 into r47; lte r41 57u128 into r48; and r47 r48 into r49; or r46 r49 into r50; gte r41 97u128 into r51; lte r41 122u128 into r52; and r51 r52 into r53; or r50 r53 into r54; not r54 into r55; mul 3u8 8u8 into r56; shr r0[0] r56 into r57; and r57 255u128 into r58; is.eq r58 0u128 into r59; is.eq r58 45u128 into r60; or r59 r60 into r61; is.eq r58 95u128 into r62; or r61 r62 into r63; gte r58 48u128 into r64; lte r58 57u128 into r65; and r64 r65 into r66; or r63 r66 into r67; gte r58 97u128 into r68; lte r58 122u128 into r69; and r68 r69 into r70; or r67 r70 into r71; not r71 into r72; mul 4u8 8u8 into r73; shr r0[0] r73 into r74; and r74 255u128 into r75; is.eq r75 0u128 into r76; is.eq r75 45u128 into r77; or r76 r77 into r78; is.eq r75 95u128 into r79; or r78 r79 into r80; gte r75 48u128 into r81; lte r75 57u128 into r82; and r81 r82 into r83; or r80 r83 into r84; gte r75 97u128 into r85; lte r75 122u128 into r86; and r85 r86 into r87; or r84 r87 into r88; not r88 into r89; mul 5u8 8u8 into r90; shr r0[0] r90 into r91; and r91 255u128 into r92; is.eq r92 0u128 into r93; is.eq r92 45u128 into r94; or r93 r94 into r95; is.eq r92 95u128 into r96; or r95 r96 into r97; gte r92 48u128 into r98; lte r92 57u128 into r99; and r98 r99 into r100; or r97 r100 into r101; gte r92 97u128 into r102; lte r92 122u128 into r103; and r102 r103 into r104; or r101 r104 into r105; not r105 into r106; mul 6u8 8u8 into r107; shr r0[0] r107 into r108; and r108 255u128 into r109; is.eq r109 0u128 into r110; is.eq r109 45u128 into r111; or r110 r111 into r112; is.eq r109 95u128 into r113; or r112 r113 into r114; gte r109 48u128 into r115; lte r109 57u128 into r116; and r115 r116 into r117; or r114 r117 into r118; gte r109 97u128 into r119; lte r109 122u128 into r120; and r119 r120 into r121; or r118 r121 into r122; not r122 into r123; mul 7u8 8u8 into r124; shr r0[0] r124 into r125; and r125 255u128 into r126; is.eq r126 0u128 into r127; is.eq r126 45u128 into r128; or r127 r128 into r129; is.eq r126 95u128 into r130; or r129 r130 into r131; gte r126 48u128 into r132; lte r126 57u128 into r133; and r132 r133 into r134; or r131 r134 into r135; gte r126 97u128 into r136; lte r126 122u128 into r137; and r136 r137 into r138; or r135 r138 into r139; not r139 into r140; mul 8u8 8u8 into r141; shr r0[0] r141 into r142; and r142 255u128 into r143; is.eq r143 0u128 into r144; is.eq r143 45u128 into r145; or r144 r145 into r146; is.eq r143 95u128 into r147; or r146 r147 into r148; gte r143 48u128 into r149; lte r143 57u128 into r150; and r149 r150 into r151; or r148 r151 into r152; gte r143 97u128 into r153; lte r143 122u128 into r154; and r153 r154 into r155; or r152 r155 into r156; not r156 into r157; mul 9u8 8u8 into r158; shr r0[0] r158 into r159; and r159 255u128 into r160; is.eq r160 0u128 into r161; is.eq r160 45u128 into r162; or r161 r162 into r163; is.eq r160 95u128 into r164; or r163 r164 into r165; gte r160 48u128 into r166; lte r160 57u128 into r167; and r166 r167 into r168; or r165 r168 into r169; gte r160 97u128 into r170; lte r160 122u128 into r171; and r170 r171 into r172; or r169 r172 into r173; not r173 into r174; mul 10u8 8u8 into r175; shr r0[0] r175 into r176; and r176 255u128 into r177; is.eq r177 0u128 into r178; is.eq r177 45u128 into r179; or r178 r179 into r180; is.eq r177 95u128 into r181; or r180 r181 into r182; gte r177 48u128 into r183; lte r177 57u128 into r184; and r183 r184 into r185; or r182 r185 into r186; gte r177 97u128 into r187; lte r177 122u128 into r188; and r187 r188 into r189; or r186 r189 into r190; not r190 into r191; mul 11u8 8u8 into r192; shr r0[0] r192 into r193; and r193 255u128 into r194; is.eq r194 0u128 into r195; is.eq r194 45u128 into r196; or r195 r196 into r197; is.eq r194 95u128 into r198; or r197 r198 into r199; gte r194 48u128 into r200; lte r194 57u128 into r201; and r200 r201 into r202; or r199 r202 into r203; gte r194 97u128 into r204; lte r194 122u128 into r205; and r204 r205 into r206; or r203 r206 into r207; not r207 into r208; mul 12u8 8u8 into r209; shr r0[0] r209 into r210; and r210 255u128 into r211; is.eq r211 0u128 into r212; is.eq r211 45u128 into r213; or r212 r213 into r214; is.eq r211 95u128 into r215; or r214 r215 into r216; gte r211 48u128 into r217; lte r211 57u128 into r218; and r217 r218 into r219; or r216 r219 into r220; gte r211 97u128 into r221; lte r211 122u128 into r222; and r221 r222 into r223; or r220 r223 into r224; not r224 into r225; mul 13u8 8u8 into r226; shr r0[0] r226 into r227; and r227 255u128 into r228; is.eq r228 0u128 into r229; is.eq r228 45u128 into r230; or r229 r230 into r231; is.eq r228 95u128 into r232; or r231 r232 into r233; gte r228 48u128 into r234; lte r228 57u128 into r235; and r234 r235 into r236; or r233 r236 into r237; gte r228 97u128 into r238; lte r228 122u128 into r239; and r238 r239 into r240; or r237 r240 into r241; not r241 into r242; mul 14u8 8u8 into r243; shr r0[0] r243 into r244; and r244 255u128 into r245; is.eq r245 0u128 into r246; is.eq r245 45u128 into r247; or r246 r247 into r248; is.eq r245 95u128 into r249; or r248 r249 into r250; gte r245 48u128 into r251; lte r245 57u128 into r252; and r251 r252 into r253; or r250 r253 into r254; gte r245 97u128 into r255; lte r245 122u128 into r256; and r255 r256 into r257; or r254 r257 into r258; not r258 into r259; mul 15u8 8u8 into r260; shr r0[0] r260 into r261; and r261 255u128 into r262; is.eq r262 0u128 into r263; is.eq r262 45u128 into r264; or r263 r264 into r265; is.eq r262 95u128 into r266; or r265 r266 into r267; gte r262 48u128 into r268; lte r262 57u128 into r269; and r268 r269 into r270; or r267 r270 into r271; gte r262 97u128 into r272; lte r262 122u128 into r273; and r272 r273 into r274; or r271 r274 into r275; not r275 into r276; ternary r276 false true into r277; ternary r259 false r277 into r278; ternary r242 false r278 into r279; ternary r225 false r279 into r280; ternary r208 false r280 into r281; ternary r191 false r281 into r282; ternary r174 false r282 into r283; ternary r157 false r283 into r284; ternary r140 false r284 into r285; ternary r123 false r285 into r286; ternary r106 false r286 into r287; ternary r89 false r287 into r288; ternary r72 false r288 into r289; ternary r55 false r289 into r290; ternary r38 false r290 into r291; ternary r21 false r291 into r292; and true r292 into r293; mul 0u8 8u8 into r294; shr r0[1] r294 into r295; and r295 255u128 into r296; is.eq r296 0u128 into r297; is.eq r296 45u128 into r298; or r297 r298 into r299; is.eq r296 95u128 into r300; or r299 r300 into r301; gte r296 48u128 into r302; lte r296 57u128 into r303; and r302 r303 into r304; or r301 r304 into r305; gte r296 97u128 into r306; lte r296 122u128 into r307; and r306 r307 into r308; or r305 r308 into r309; not r309 into r310; mul 1u8 8u8 into r311; shr r0[1] r311 into r312; and r312 255u128 into r313; is.eq r313 0u128 into r314; is.eq r313 45u128 into r315; or r314 r315 into r316; is.eq r313 95u128 into r317; or r316 r317 into r318; gte r313 48u128 into r319; lte r313 57u128 into r320; and r319 r320 into r321; or r318 r321 into r322; gte r313 97u128 into r323; lte r313 122u128 into r324; and r323 r324 into r325; or r322 r325 into r326; not r326 into r327; mul 2u8 8u8 into r328; shr r0[1] r328 into r329; and r329 255u128 into r330; is.eq r330 0u128 into r331; is.eq r330 45u128 into r332; or r331 r332 into r333; is.eq r330 95u128 into r334; or r333 r334 into r335; gte r330 48u128 into r336; lte r330 57u128 into r337; and r336 r337 into r338; or r335 r338 into r339; gte r330 97u128 into r340; lte r330 122u128 into r341; and r340 r341 into r342; or r339 r342 into r343; not r343 into r344; mul 3u8 8u8 into r345; shr r0[1] r345 into r346; and r346 255u128 into r347; is.eq r347 0u128 into r348; is.eq r347 45u128 into r349; or r348 r349 into r350; is.eq r347 95u128 into r351; or r350 r351 into r352; gte r347 48u128 into r353; lte r347 57u128 into r354; and r353 r354 into r355; or r352 r355 into r356; gte r347 97u128 into r357; lte r347 122u128 into r358; and r357 r358 into r359; or r356 r359 into r360; not r360 into r361; mul 4u8 8u8 into r362; shr r0[1] r362 into r363; and r363 255u128 into r364; is.eq r364 0u128 into r365; is.eq r364 45u128 into r366; or r365 r366 into r367; is.eq r364 95u128 into r368; or r367 r368 into r369; gte r364 48u128 into r370; lte r364 57u128 into r371; and r370 r371 into r372; or r369 r372 into r373; gte r364 97u128 into r374; lte r364 122u128 into r375; and r374 r375 into r376; or r373 r376 into r377; not r377 into r378; mul 5u8 8u8 into r379; shr r0[1] r379 into r380; and r380 255u128 into r381; is.eq r381 0u128 into r382; is.eq r381 45u128 into r383; or r382 r383 into r384; is.eq r381 95u128 into r385; or r384 r385 into r386; gte r381 48u128 into r387; lte r381 57u128 into r388; and r387 r388 into r389; or r386 r389 into r390; gte r381 97u128 into r391; lte r381 122u128 into r392; and r391 r392 into r393; or r390 r393 into r394; not r394 into r395; mul 6u8 8u8 into r396; shr r0[1] r396 into r397; and r397 255u128 into r398; is.eq r398 0u128 into r399; is.eq r398 45u128 into r400; or r399 r400 into r401; is.eq r398 95u128 into r402; or r401 r402 into r403; gte r398 48u128 into r404; lte r398 57u128 into r405; and r404 r405 into r406; or r403 r406 into r407; gte r398 97u128 into r408; lte r398 122u128 into r409; and r408 r409 into r410; or r407 r410 into r411; not r411 into r412; mul 7u8 8u8 into r413; shr r0[1] r413 into r414; and r414 255u128 into r415; is.eq r415 0u128 into r416; is.eq r415 45u128 into r417; or r416 r417 into r418; is.eq r415 95u128 into r419; or r418 r419 into r420; gte r415 48u128 into r421; lte r415 57u128 into r422; and r421 r422 into r423; or r420 r423 into r424; gte r415 97u128 into r425; lte r415 122u128 into r426; and r425 r426 into r427; or r424 r427 into r428; not r428 into r429; mul 8u8 8u8 into r430; shr r0[1] r430 into r431; and r431 255u128 into r432; is.eq r432 0u128 into r433; is.eq r432 45u128 into r434; or r433 r434 into r435; is.eq r432 95u128 into r436; or r435 r436 into r437; gte r432 48u128 into r438; lte r432 57u128 into r439; and r438 r439 into r440; or r437 r440 into r441; gte r432 97u128 into r442; lte r432 122u128 into r443; and r442 r443 into r444; or r441 r444 into r445; not r445 into r446; mul 9u8 8u8 into r447; shr r0[1] r447 into r448; and r448 255u128 into r449; is.eq r449 0u128 into r450; is.eq r449 45u128 into r451; or r450 r451 into r452; is.eq r449 95u128 into r453; or r452 r453 into r454; gte r449 48u128 into r455; lte r449 57u128 into r456; and r455 r456 into r457; or r454 r457 into r458; gte r449 97u128 into r459; lte r449 122u128 into r460; and r459 r460 into r461; or r458 r461 into r462; not r462 into r463; mul 10u8 8u8 into r464; shr r0[1] r464 into r465; and r465 255u128 into r466; is.eq r466 0u128 into r467; is.eq r466 45u128 into r468; or r467 r468 into r469; is.eq r466 95u128 into r470; or r469 r470 into r471; gte r466 48u128 into r472; lte r466 57u128 into r473; and r472 r473 into r474; or r471 r474 into r475; gte r466 97u128 into r476; lte r466 122u128 into r477; and r476 r477 into r478; or r475 r478 into r479; not r479 into r480; mul 11u8 8u8 into r481; shr r0[1] r481 into r482; and r482 255u128 into r483; is.eq r483 0u128 into r484; is.eq r483 45u128 into r485; or r484 r485 into r486; is.eq r483 95u128 into r487; or r486 r487 into r488; gte r483 48u128 into r489; lte r483 57u128 into r490; and r489 r490 into r491; or r488 r491 into r492; gte r483 97u128 into r493; lte r483 122u128 into r494; and r493 r494 into r495; or r492 r495 into r496; not r496 into r497; mul 12u8 8u8 into r498; shr r0[1] r498 into r499; and r499 255u128 into r500; is.eq r500 0u128 into r501; is.eq r500 45u128 into r502; or r501 r502 into r503; is.eq r500 95u128 into r504; or r503 r504 into r505; gte r500 48u128 into r506; lte r500 57u128 into r507; and r506 r507 into r508; or r505 r508 into r509; gte r500 97u128 into r510; lte r500 122u128 into r511; and r510 r511 into r512; or r509 r512 into r513; not r513 into r514; mul 13u8 8u8 into r515; shr r0[1] r515 into r516; and r516 255u128 into r517; is.eq r517 0u128 into r518; is.eq r517 45u128 into r519; or r518 r519 into r520; is.eq r517 95u128 into r521; or r520 r521 into r522; gte r517 48u128 into r523; lte r517 57u128 into r524; and r523 r524 into r525; or r522 r525 into r526; gte r517 97u128 into r527; lte r517 122u128 into r528; and r527 r528 into r529; or r526 r529 into r530; not r530 into r531; mul 14u8 8u8 into r532; shr r0[1] r532 into r533; and r533 255u128 into r534; is.eq r534 0u128 into r535; is.eq r534 45u128 into r536; or r535 r536 into r537; is.eq r534 95u128 into r538; or r537 r538 into r539; gte r534 48u128 into r540; lte r534 57u128 into r541; and r540 r541 into r542; or r539 r542 into r543; gte r534 97u128 into r544; lte r534 122u128 into r545; and r544 r545 into r546; or r543 r546 into r547; not r547 into r548; mul 15u8 8u8 into r549; shr r0[1] r549 into r550; and r550 255u128 into r551; is.eq r551 0u128 into r552; is.eq r551 45u128 into r553; or r552 r553 into r554; is.eq r551 95u128 into r555; or r554 r555 into r556; gte r551 48u128 into r557; lte r551 57u128 into r558; and r557 r558 into r559; or r556 r559 into r560; gte r551 97u128 into r561; lte r551 122u128 into r562; and r561 r562 into r563; or r560 r563 into r564; not r564 into r565; ternary r565 false true into r566; ternary r548 false r566 into r567; ternary r531 false r567 into r568; ternary r514 false r568 into r569; ternary r497 false r569 into r570; ternary r480 false r570 into r571; ternary r463 false r571 into r572; ternary r446 false r572 into r573; ternary r429 false r573 into r574; ternary r412 false r574 into r575; ternary r395 false r575 into r576; ternary r378 false r576 into r577; ternary r361 false r577 into r578; ternary r344 false r578 into r579; ternary r327 false r579 into r580; ternary r310 false r580 into r581; and r293 r581 into r582; mul 0u8 8u8 into r583; shr r0[2] r583 into r584; and r584 255u128 into r585; is.eq r585 0u128 into r586; is.eq r585 45u128 into r587; or r586 r587 into r588; is.eq r585 95u128 into r589; or r588 r589 into r590; gte r585 48u128 into r591; lte r585 57u128 into r592; and r591 r592 into r593; or r590 r593 into r594; gte r585 97u128 into r595; lte r585 122u128 into r596; and r595 r596 into r597; or r594 r597 into r598; not r598 into r599; mul 1u8 8u8 into r600; shr r0[2] r600 into r601; and r601 255u128 into r602; is.eq r602 0u128 into r603; is.eq r602 45u128 into r604; or r603 r604 into r605; is.eq r602 95u128 into r606; or r605 r606 into r607; gte r602 48u128 into r608; lte r602 57u128 into r609; and r608 r609 into r610; or r607 r610 into r611; gte r602 97u128 into r612; lte r602 122u128 into r613; and r612 r613 into r614; or r611 r614 into r615; not r615 into r616; mul 2u8 8u8 into r617; shr r0[2] r617 into r618; and r618 255u128 into r619; is.eq r619 0u128 into r620; is.eq r619 45u128 into r621; or r620 r621 into r622; is.eq r619 95u128 into r623; or r622 r623 into r624; gte r619 48u128 into r625; lte r619 57u128 into r626; and r625 r626 into r627; or r624 r627 into r628; gte r619 97u128 into r629; lte r619 122u128 into r630; and r629 r630 into r631; or r628 r631 into r632; not r632 into r633; mul 3u8 8u8 into r634; shr r0[2] r634 into r635; and r635 255u128 into r636; is.eq r636 0u128 into r637; is.eq r636 45u128 into r638; or r637 r638 into r639; is.eq r636 95u128 into r640; or r639 r640 into r641; gte r636 48u128 into r642; lte r636 57u128 into r643; and r642 r643 into r644; or r641 r644 into r645; gte r636 97u128 into r646; lte r636 122u128 into r647; and r646 r647 into r648; or r645 r648 into r649; not r649 into r650; mul 4u8 8u8 into r651; shr r0[2] r651 into r652; and r652 255u128 into r653; is.eq r653 0u128 into r654; is.eq r653 45u128 into r655; or r654 r655 into r656; is.eq r653 95u128 into r657; or r656 r657 into r658; gte r653 48u128 into r659; lte r653 57u128 into r660; and r659 r660 into r661; or r658 r661 into r662; gte r653 97u128 into r663; lte r653 122u128 into r664; and r663 r664 into r665; or r662 r665 into r666; not r666 into r667; mul 5u8 8u8 into r668; shr r0[2] r668 into r669; and r669 255u128 into r670; is.eq r670 0u128 into r671; is.eq r670 45u128 into r672; or r671 r672 into r673; is.eq r670 95u128 into r674; or r673 r674 into r675; gte r670 48u128 into r676; lte r670 57u128 into r677; and r676 r677 into r678; or r675 r678 into r679; gte r670 97u128 into r680; lte r670 122u128 into r681; and r680 r681 into r682; or r679 r682 into r683; not r683 into r684; mul 6u8 8u8 into r685; shr r0[2] r685 into r686; and r686 255u128 into r687; is.eq r687 0u128 into r688; is.eq r687 45u128 into r689; or r688 r689 into r690; is.eq r687 95u128 into r691; or r690 r691 into r692; gte r687 48u128 into r693; lte r687 57u128 into r694; and r693 r694 into r695; or r692 r695 into r696; gte r687 97u128 into r697; lte r687 122u128 into r698; and r697 r698 into r699; or r696 r699 into r700; not r700 into r701; mul 7u8 8u8 into r702; shr r0[2] r702 into r703; and r703 255u128 into r704; is.eq r704 0u128 into r705; is.eq r704 45u128 into r706; or r705 r706 into r707; is.eq r704 95u128 into r708; or r707 r708 into r709; gte r704 48u128 into r710; lte r704 57u128 into r711; and r710 r711 into r712; or r709 r712 into r713; gte r704 97u128 into r714; lte r704 122u128 into r715; and r714 r715 into r716; or r713 r716 into r717; not r717 into r718; mul 8u8 8u8 into r719; shr r0[2] r719 into r720; and r720 255u128 into r721; is.eq r721 0u128 into r722; is.eq r721 45u128 into r723; or r722 r723 into r724; is.eq r721 95u128 into r725; or r724 r725 into r726; gte r721 48u128 into r727; lte r721 57u128 into r728; and r727 r728 into r729; or r726 r729 into r730; gte r721 97u128 into r731; lte r721 122u128 into r732; and r731 r732 into r733; or r730 r733 into r734; not r734 into r735; mul 9u8 8u8 into r736; shr r0[2] r736 into r737; and r737 255u128 into r738; is.eq r738 0u128 into r739; is.eq r738 45u128 into r740; or r739 r740 into r741; is.eq r738 95u128 into r742; or r741 r742 into r743; gte r738 48u128 into r744; lte r738 57u128 into r745; and r744 r745 into r746; or r743 r746 into r747; gte r738 97u128 into r748; lte r738 122u128 into r749; and r748 r749 into r750; or r747 r750 into r751; not r751 into r752; mul 10u8 8u8 into r753; shr r0[2] r753 into r754; and r754 255u128 into r755; is.eq r755 0u128 into r756; is.eq r755 45u128 into r757; or r756 r757 into r758; is.eq r755 95u128 into r759; or r758 r759 into r760; gte r755 48u128 into r761; lte r755 57u128 into r762; and r761 r762 into r763; or r760 r763 into r764; gte r755 97u128 into r765; lte r755 122u128 into r766; and r765 r766 into r767; or r764 r767 into r768; not r768 into r769; mul 11u8 8u8 into r770; shr r0[2] r770 into r771; and r771 255u128 into r772; is.eq r772 0u128 into r773; is.eq r772 45u128 into r774; or r773 r774 into r775; is.eq r772 95u128 into r776; or r775 r776 into r777; gte r772 48u128 into r778; lte r772 57u128 into r779; and r778 r779 into r780; or r777 r780 into r781; gte r772 97u128 into r782; lte r772 122u128 into r783; and r782 r783 into r784; or r781 r784 into r785; not r785 into r786; mul 12u8 8u8 into r787; shr r0[2] r787 into r788; and r788 255u128 into r789; is.eq r789 0u128 into r790; is.eq r789 45u128 into r791; or r790 r791 into r792; is.eq r789 95u128 into r793; or r792 r793 into r794; gte r789 48u128 into r795; lte r789 57u128 into r796; and r795 r796 into r797; or r794 r797 into r798; gte r789 97u128 into r799; lte r789 122u128 into r800; and r799 r800 into r801; or r798 r801 into r802; not r802 into r803; mul 13u8 8u8 into r804; shr r0[2] r804 into r805; and r805 255u128 into r806; is.eq r806 0u128 into r807; is.eq r806 45u128 into r808; or r807 r808 into r809; is.eq r806 95u128 into r810; or r809 r810 into r811; gte r806 48u128 into r812; lte r806 57u128 into r813; and r812 r813 into r814; or r811 r814 into r815; gte r806 97u128 into r816; lte r806 122u128 into r817; and r816 r817 into r818; or r815 r818 into r819; not r819 into r820; mul 14u8 8u8 into r821; shr r0[2] r821 into r822; and r822 255u128 into r823; is.eq r823 0u128 into r824; is.eq r823 45u128 into r825; or r824 r825 into r826; is.eq r823 95u128 into r827; or r826 r827 into r828; gte r823 48u128 into r829; lte r823 57u128 into r830; and r829 r830 into r831; or r828 r831 into r832; gte r823 97u128 into r833; lte r823 122u128 into r834; and r833 r834 into r835; or r832 r835 into r836; not r836 into r837; mul 15u8 8u8 into r838; shr r0[2] r838 into r839; and r839 255u128 into r840; is.eq r840 0u128 into r841; is.eq r840 45u128 into r842; or r841 r842 into r843; is.eq r840 95u128 into r844; or r843 r844 into r845; gte r840 48u128 into r846; lte r840 57u128 into r847; and r846 r847 into r848; or r845 r848 into r849; gte r840 97u128 into r850; lte r840 122u128 into r851; and r850 r851 into r852; or r849 r852 into r853; not r853 into r854; ternary r854 false true into r855; ternary r837 false r855 into r856; ternary r820 false r856 into r857; ternary r803 false r857 into r858; ternary r786 false r858 into r859; ternary r769 false r859 into r860; ternary r752 false r860 into r861; ternary r735 false r861 into r862; ternary r718 false r862 into r863; ternary r701 false r863 into r864; ternary r684 false r864 into r865; ternary r667 false r865 into r866; ternary r650 false r866 into r867; ternary r633 false r867 into r868; ternary r616 false r868 into r869; ternary r599 false r869 into r870; and r582 r870 into r871; mul 0u8 8u8 into r872; shr r0[3] r872 into r873; and r873 255u128 into r874; is.eq r874 0u128 into r875; is.eq r874 45u128 into r876; or r875 r876 into r877; is.eq r874 95u128 into r878; or r877 r878 into r879; gte r874 48u128 into r880; lte r874 57u128 into r881; and r880 r881 into r882; or r879 r882 into r883; gte r874 97u128 into r884; lte r874 122u128 into r885; and r884 r885 into r886; or r883 r886 into r887; not r887 into r888; mul 1u8 8u8 into r889; shr r0[3] r889 into r890; and r890 255u128 into r891; is.eq r891 0u128 into r892; is.eq r891 45u128 into r893; or r892 r893 into r894; is.eq r891 95u128 into r895; or r894 r895 into r896; gte r891 48u128 into r897; lte r891 57u128 into r898; and r897 r898 into r899; or r896 r899 into r900; gte r891 97u128 into r901; lte r891 122u128 into r902; and r901 r902 into r903; or r900 r903 into r904; not r904 into r905; mul 2u8 8u8 into r906; shr r0[3] r906 into r907; and r907 255u128 into r908; is.eq r908 0u128 into r909; is.eq r908 45u128 into r910; or r909 r910 into r911; is.eq r908 95u128 into r912; or r911 r912 into r913; gte r908 48u128 into r914; lte r908 57u128 into r915; and r914 r915 into r916; or r913 r916 into r917; gte r908 97u128 into r918; lte r908 122u128 into r919; and r918 r919 into r920; or r917 r920 into r921; not r921 into r922; mul 3u8 8u8 into r923; shr r0[3] r923 into r924; and r924 255u128 into r925; is.eq r925 0u128 into r926; is.eq r925 45u128 into r927; or r926 r927 into r928; is.eq r925 95u128 into r929; or r928 r929 into r930; gte r925 48u128 into r931; lte r925 57u128 into r932; and r931 r932 into r933; or r930 r933 into r934; gte r925 97u128 into r935; lte r925 122u128 into r936; and r935 r936 into r937; or r934 r937 into r938; not r938 into r939; mul 4u8 8u8 into r940; shr r0[3] r940 into r941; and r941 255u128 into r942; is.eq r942 0u128 into r943; is.eq r942 45u128 into r944; or r943 r944 into r945; is.eq r942 95u128 into r946; or r945 r946 into r947; gte r942 48u128 into r948; lte r942 57u128 into r949; and r948 r949 into r950; or r947 r950 into r951; gte r942 97u128 into r952; lte r942 122u128 into r953; and r952 r953 into r954; or r951 r954 into r955; not r955 into r956; mul 5u8 8u8 into r957; shr r0[3] r957 into r958; and r958 255u128 into r959; is.eq r959 0u128 into r960; is.eq r959 45u128 into r961; or r960 r961 into r962; is.eq r959 95u128 into r963; or r962 r963 into r964; gte r959 48u128 into r965; lte r959 57u128 into r966; and r965 r966 into r967; or r964 r967 into r968; gte r959 97u128 into r969; lte r959 122u128 into r970; and r969 r970 into r971; or r968 r971 into r972; not r972 into r973; mul 6u8 8u8 into r974; shr r0[3] r974 into r975; and r975 255u128 into r976; is.eq r976 0u128 into r977; is.eq r976 45u128 into r978; or r977 r978 into r979; is.eq r976 95u128 into r980; or r979 r980 into r981; gte r976 48u128 into r982; lte r976 57u128 into r983; and r982 r983 into r984; or r981 r984 into r985; gte r976 97u128 into r986; lte r976 122u128 into r987; and r986 r987 into r988; or r985 r988 into r989; not r989 into r990; mul 7u8 8u8 into r991; shr r0[3] r991 into r992; and r992 255u128 into r993; is.eq r993 0u128 into r994; is.eq r993 45u128 into r995; or r994 r995 into r996; is.eq r993 95u128 into r997; or r996 r997 into r998; gte r993 48u128 into r999; lte r993 57u128 into r1000; and r999 r1000 into r1001; or r998 r1001 into r1002; gte r993 97u128 into r1003; lte r993 122u128 into r1004; and r1003 r1004 into r1005; or r1002 r1005 into r1006; not r1006 into r1007; mul 8u8 8u8 into r1008; shr r0[3] r1008 into r1009; and r1009 255u128 into r1010; is.eq r1010 0u128 into r1011; is.eq r1010 45u128 into r1012; or r1011 r1012 into r1013; is.eq r1010 95u128 into r1014; or r1013 r1014 into r1015; gte r1010 48u128 into r1016; lte r1010 57u128 into r1017; and r1016 r1017 into r1018; or r1015 r1018 into r1019; gte r1010 97u128 into r1020; lte r1010 122u128 into r1021; and r1020 r1021 into r1022; or r1019 r1022 into r1023; not r1023 into r1024; mul 9u8 8u8 into r1025; shr r0[3] r1025 into r1026; and r1026 255u128 into r1027; is.eq r1027 0u128 into r1028; is.eq r1027 45u128 into r1029; or r1028 r1029 into r1030; is.eq r1027 95u128 into r1031; or r1030 r1031 into r1032; gte r1027 48u128 into r1033; lte r1027 57u128 into r1034; and r1033 r1034 into r1035; or r1032 r1035 into r1036; gte r1027 97u128 into r1037; lte r1027 122u128 into r1038; and r1037 r1038 into r1039; or r1036 r1039 into r1040; not r1040 into r1041; mul 10u8 8u8 into r1042; shr r0[3] r1042 into r1043; and r1043 255u128 into r1044; is.eq r1044 0u128 into r1045; is.eq r1044 45u128 into r1046; or r1045 r1046 into r1047; is.eq r1044 95u128 into r1048; or r1047 r1048 into r1049; gte r1044 48u128 into r1050; lte r1044 57u128 into r1051; and r1050 r1051 into r1052; or r1049 r1052 into r1053; gte r1044 97u128 into r1054; lte r1044 122u128 into r1055; and r1054 r1055 into r1056; or r1053 r1056 into r1057; not r1057 into r1058; mul 11u8 8u8 into r1059; shr r0[3] r1059 into r1060; and r1060 255u128 into r1061; is.eq r1061 0u128 into r1062; is.eq r1061 45u128 into r1063; or r1062 r1063 into r1064; is.eq r1061 95u128 into r1065; or r1064 r1065 into r1066; gte r1061 48u128 into r1067; lte r1061 57u128 into r1068; and r1067 r1068 into r1069; or r1066 r1069 into r1070; gte r1061 97u128 into r1071; lte r1061 122u128 into r1072; and r1071 r1072 into r1073; or r1070 r1073 into r1074; not r1074 into r1075; mul 12u8 8u8 into r1076; shr r0[3] r1076 into r1077; and r1077 255u128 into r1078; is.eq r1078 0u128 into r1079; is.eq r1078 45u128 into r1080; or r1079 r1080 into r1081; is.eq r1078 95u128 into r1082; or r1081 r1082 into r1083; gte r1078 48u128 into r1084; lte r1078 57u128 into r1085; and r1084 r1085 into r1086; or r1083 r1086 into r1087; gte r1078 97u128 into r1088; lte r1078 122u128 into r1089; and r1088 r1089 into r1090; or r1087 r1090 into r1091; not r1091 into r1092; mul 13u8 8u8 into r1093; shr r0[3] r1093 into r1094; and r1094 255u128 into r1095; is.eq r1095 0u128 into r1096; is.eq r1095 45u128 into r1097; or r1096 r1097 into r1098; is.eq r1095 95u128 into r1099; or r1098 r1099 into r1100; gte r1095 48u128 into r1101; lte r1095 57u128 into r1102; and r1101 r1102 into r1103; or r1100 r1103 into r1104; gte r1095 97u128 into r1105; lte r1095 122u128 into r1106; and r1105 r1106 into r1107; or r1104 r1107 into r1108; not r1108 into r1109; mul 14u8 8u8 into r1110; shr r0[3] r1110 into r1111; and r1111 255u128 into r1112; is.eq r1112 0u128 into r1113; is.eq r1112 45u128 into r1114; or r1113 r1114 into r1115; is.eq r1112 95u128 into r1116; or r1115 r1116 into r1117; gte r1112 48u128 into r1118; lte r1112 57u128 into r1119; and r1118 r1119 into r1120; or r1117 r1120 into r1121; gte r1112 97u128 into r1122; lte r1112 122u128 into r1123; and r1122 r1123 into r1124; or r1121 r1124 into r1125; not r1125 into r1126; mul 15u8 8u8 into r1127; shr r0[3] r1127 into r1128; and r1128 255u128 into r1129; is.eq r1129 0u128 into r1130; is.eq r1129 45u128 into r1131; or r1130 r1131 into r1132; is.eq r1129 95u128 into r1133; or r1132 r1133 into r1134; gte r1129 48u128 into r1135; lte r1129 57u128 into r1136; and r1135 r1136 into r1137; or r1134 r1137 into r1138; gte r1129 97u128 into r1139; lte r1129 122u128 into r1140; and r1139 r1140 into r1141; or r1138 r1141 into r1142; not r1142 into r1143; ternary r1143 false true into r1144; ternary r1126 false r1144 into r1145; ternary r1109 false r1145 into r1146; ternary r1092 false r1146 into r1147; ternary r1075 false r1147 into r1148; ternary r1058 false r1148 into r1149; ternary r1041 false r1149 into r1150; ternary r1024 false r1150 into r1151; ternary r1007 false r1151 into r1152; ternary r990 false r1152 into r1153; ternary r973 false r1153 into r1154; ternary r956 false r1154 into r1155; ternary r939 false r1155 into r1156; ternary r922 false r1156 into r1157; ternary r905 false r1157 into r1158; ternary r888 false r1158 into r1159; and r871 r1159 into r1160; output r1160 as boolean; function initialize_collection: input r0 as u128.public; input r1 as u128.public; input r2 as BaseURI.public; hash.bhp256 self.caller into r3 as u128; async initialize_collection r0 r1 r3 r2 into r4; output r4 as aleo_name_service_registry_v1.aleo/initialize_collection.future; finalize initialize_collection: input r0 as u128.public; input r1 as u128.public; input r2 as u128.public; input r3 as BaseURI.public; get.or_use toggle_settings[0u8] 0u32 into r4; and r4 1u32 into r5; assert.eq r5 0u32; set r0 into general_settings[0u8]; set r0 into general_settings[1u8]; set r1 into general_settings[2u8]; set r3.data0 into general_settings[3u8]; set r3.data1 into general_settings[4u8]; set r3.data2 into general_settings[5u8]; set r3.data3 into general_settings[6u8]; set r2 into general_settings[7u8]; set 1u32 into toggle_settings[0u8]; set 0u32 into toggle_settings[1u8]; function set_admin: input r0 as address.private; hash.bhp256 self.caller into r1 as u128; hash.bhp256 r0 into r2 as u128; async set_admin r1 r2 into r3; output r3 as aleo_name_service_registry_v1.aleo/set_admin.future; finalize set_admin: input r0 as u128.public; input r1 as u128.public; get general_settings[7u8] into r2; assert.eq r0 r2; set r1 into general_settings[7u8]; function set_mint_block: input r0 as u32.public; hash.bhp256 self.caller into r1 as u128; async set_mint_block r1 r0 into r2; output r2 as aleo_name_service_registry_v1.aleo/set_mint_block.future; finalize set_mint_block: input r0 as u128.public; input r1 as u32.public; get general_settings[7u8] into r2; assert.eq r0 r2; get toggle_settings[0u8] into r3; and r3 9u32 into r4; assert.eq r4 1u32; set r1 into toggle_settings[1u8]; function update_base_uri: input r0 as BaseURI.public; hash.bhp256 self.caller into r1 as u128; async update_base_uri r1 r0 into r2; output r2 as aleo_name_service_registry_v1.aleo/update_base_uri.future; finalize update_base_uri: input r0 as u128.public; input r1 as BaseURI.public; get general_settings[7u8] into r2; assert.eq r0 r2; get toggle_settings[0u8] into r3; and r3 9u32 into r4; assert.eq r4 1u32; set r1.data0 into general_settings[3u8]; set r1.data1 into general_settings[4u8]; set r1.data2 into general_settings[5u8]; set r1.data3 into general_settings[6u8]; function update_toggle_settings: input r0 as u32.public; hash.bhp256 self.caller into r1 as u128; async update_toggle_settings r1 r0 into r2; output r2 as aleo_name_service_registry_v1.aleo/update_toggle_settings.future; finalize update_toggle_settings: input r0 as u128.public; input r1 as u32.public; get general_settings[7u8] into r2; assert.eq r0 r2; get toggle_settings[0u8] into r3; and r3 9u32 into r4; assert.eq r4 1u32; and r1 1u32 into r5; assert.eq r5 1u32; set r1 into toggle_settings[0u8]; function register_tld: input r0 as address.private; input r1 as [u128; 4u32].private; cast r1 0field into r2 as Name; hash.psd2 r2 into r3 as field; hash.bhp256 self.caller into r4 as u128; async register_tld r4 r0 r3 r1 into r5; output r5 as aleo_name_service_registry_v1.aleo/register_tld.future; finalize register_tld: input r0 as u128.public; input r1 as address.public; input r2 as field.public; input r3 as [u128; 4u32].public; get general_settings[7u8] into r4; assert.eq r0 r4; cast r3 0field 0u128 into r5 as NameStruct; set r5 into names[r2]; set r1 into nft_owners[r2]; function register: input r0 as [u128; 4u32].private; input r1 as field.private; input r2 as address.private; input r3 as u128.private; call validate_name r0 into r4; assert.eq r4 true; cast r0 r1 into r5 as Name; hash.psd2 r5 into r6 as field; cast r2 r6 0scalar into r7 as NFT.record; async register r6 r0 r1 r3 self.caller into r8; output r7 as NFT.record; output r8 as aleo_name_service_registry_v1.aleo/register.future; finalize register: input r0 as field.public; input r1 as [u128; 4u32].public; input r2 as field.public; input r3 as u128.public; input r4 as address.public; get nft_owners[r2] into r5; assert.eq r4 r5; contains names[r0] into r6; assert.eq r6 false; get toggle_settings[1u8] into r7; lte r7 block.height into r8; assert.eq r8 true; get toggle_settings[0u8] into r9; and r9 3u32 into r10; assert.eq r10 3u32; cast r1 r2 r3 into r11 as NameStruct; set r11 into names[r0]; function register_private: input r0 as [u128; 4u32].private; input r1 as NFT.record; input r2 as address.private; input r3 as u128.private; call validate_name r0 into r4; assert.eq r4 true; cast r0 r1.data into r5 as Name; hash.psd2 r5 into r6 as field; cast r2 r6 0scalar into r7 as NFT.record; cast r1.owner r1.data r1.edition into r8 as NFT.record; async register_private r6 r0 r1.data r3 into r9; output r7 as NFT.record; output r8 as NFT.record; output r9 as aleo_name_service_registry_v1.aleo/register_private.future; finalize register_private: input r0 as field.public; input r1 as [u128; 4u32].public; input r2 as field.public; input r3 as u128.public; contains names[r0] into r4; assert.eq r4 false; get toggle_settings[1u8] into r5; lte r5 block.height into r6; assert.eq r6 true; get toggle_settings[0u8] into r7; and r7 3u32 into r8; assert.eq r8 3u32; cast r1 r2 r3 into r9 as NameStruct; set r9 into names[r0]; function register_public: input r0 as [u128; 4u32].private; input r1 as field.private; input r2 as address.private; input r3 as u128.private; call validate_name r0 into r4; assert.eq r4 true; cast r0 r1 into r5 as Name; hash.psd2 r5 into r6 as field; cast r2 r6 0scalar into r7 as NFT.record; async register_public r6 r0 r1 r3 self.signer into r8; output r7 as NFT.record; output r8 as aleo_name_service_registry_v1.aleo/register_public.future; finalize register_public: input r0 as field.public; input r1 as [u128; 4u32].public; input r2 as field.public; input r3 as u128.public; input r4 as address.public; get nft_owners[r2] into r5; assert.eq r4 r5; contains names[r0] into r6; assert.eq r6 false; get toggle_settings[1u8] into r7; lte r7 block.height into r8; assert.eq r8 true; get toggle_settings[0u8] into r9; and r9 3u32 into r10; assert.eq r10 3u32; cast r1 r2 r3 into r11 as NameStruct; set r11 into names[r0]; function transfer_private: input r0 as NFT.record; input r1 as address.private; cast r1 r0.data 0scalar into r2 as NFT.record; output r2 as NFT.record; function transfer_public: input r0 as address.private; input r1 as field.private; async transfer_public r0 r1 self.caller into r2; output r2 as aleo_name_service_registry_v1.aleo/transfer_public.future; finalize transfer_public: input r0 as address.public; input r1 as field.public; input r2 as address.public; get nft_owners[r1] into r3; assert.eq r2 r3; assert.neq r2 r0; set r0 into nft_owners[r1]; get.or_use name_versions[r1] 0u64 into r4; add r4 1u64 into r5; set r5 into name_versions[r1]; function convert_private_to_public: input r0 as NFT.record; input r1 as address.private; async convert_private_to_public r1 r0.data into r2; output r2 as aleo_name_service_registry_v1.aleo/convert_private_to_public.future; finalize convert_private_to_public: input r0 as address.public; input r1 as field.public; set r0 into nft_owners[r1]; function convert_public_to_private: input r0 as field.private; input r1 as address.private; cast r1 r0 0scalar into r2 as NFT.record; async convert_public_to_private self.caller r0 into r3; output r2 as NFT.record; output r3 as aleo_name_service_registry_v1.aleo/convert_public_to_private.future; finalize convert_public_to_private: input r0 as address.public; input r1 as field.public; get nft_owners[r1] into r2; assert.eq r0 r2; remove nft_owners[r1]; get.or_use name_versions[r1] 0u64 into r3; add r3 1u64 into r4; set r4 into name_versions[r1]; function set_primary_name: input r0 as field.private; async set_primary_name r0 self.caller into r1; output r1 as aleo_name_service_registry_v1.aleo/set_primary_name.future; finalize set_primary_name: input r0 as field.public; input r1 as address.public; get nft_owners[r0] into r2; assert.eq r1 r2; set r0 into primary_names[r1]; function unset_primary_name: async unset_primary_name self.caller into r0; output r0 as aleo_name_service_registry_v1.aleo/unset_primary_name.future; finalize unset_primary_name: input r0 as address.public; remove primary_names[r0]; function set_resolver: input r0 as field.private; input r1 as u128.private; async set_resolver r0 self.caller r1 into r2; output r2 as aleo_name_service_registry_v1.aleo/set_resolver.future; finalize set_resolver: input r0 as field.public; input r1 as address.public; input r2 as u128.public; get nft_owners[r0] into r3; assert.eq r1 r3; get names[r0] into r4; cast r4.name r4.parent r2 into r5 as NameStruct; set r5 into names[r0]; function set_resolver_record: input r0 as field.private; input r1 as u128.private; input r2 as [u128; 4u32].private; call validate_name r2 into r3; assert.eq r3 true; async set_resolver_record r0 self.caller r1 r2 into r4; output r4 as aleo_name_service_registry_v1.aleo/set_resolver_record.future; finalize set_resolver_record: input r0 as field.public; input r1 as address.public; input r2 as u128.public; input r3 as [u128; 4u32].public; get nft_owners[r0] into r4; assert.eq r1 r4; get.or_use name_versions[r0] 1u64 into r5; cast r0 r2 r5 into r6 as ResolverIndex; set r3 into resolvers[r6]; function unset_resolver_record: input r0 as field.private; input r1 as u128.private; async unset_resolver_record r0 self.caller r1 into r2; output r2 as aleo_name_service_registry_v1.aleo/unset_resolver_record.future; finalize unset_resolver_record: input r0 as field.public; input r1 as address.public; input r2 as u128.public; get nft_owners[r0] into r3; assert.eq r1 r3; get name_versions[r0] into r4; cast r0 r2 r4 into r5 as ResolverIndex; remove resolvers[r5]; function clear_resolver_record: input r0 as field.private; async clear_resolver_record r0 self.caller into r1; output r1 as aleo_name_service_registry_v1.aleo/clear_resolver_record.future; finalize clear_resolver_record: input r0 as field.public; input r1 as address.public; get nft_owners[r0] into r2; assert.eq r1 r2; get name_versions[r0] into r3; add r3 1u64 into r4; set r4 into name_versions[r0]; function check_ownship: input r0 as field.private; input r1 as address.private; async check_ownship r0 r1 into r2; output r2 as aleo_name_service_registry_v1.aleo/check_ownship.future; finalize check_ownship: input r0 as field.public; input r1 as address.public; get nft_owners[r0] into r2; assert.eq r1 r2; function proof_ownership: input r0 as NFT.record; input r1 as address.private; cast r1 r0.owner r0.data r0.edition into r2 as NFT_ownership.record; cast r0.owner r0.data r0.edition into r3 as NFT.record; output r3 as NFT.record; output r2 as NFT_ownership.record; function transfer_credits: input r0 as field.private; input r1 as [u128; 4u32].private; input r2 as u64.private; input r3 as credits.aleo/credits.record; call credits.aleo/transfer_private_to_public r3 aleo1udpz0p5yr9pd8lxa5d94qmmwrqzsupkgp488kcf0hpjagf0jyvfqeft9ja r2 into r4 r5; hash.psd2 r1 into r6 as scalar; commit.bhp256 r0 r6 into r7 as field; async transfer_credits r5 r7 r2 into r8; output r8 as aleo_name_service_registry_v1.aleo/transfer_credits.future; finalize transfer_credits: input r0 as credits.aleo/transfer_private_to_public.future; input r1 as field.public; input r2 as u64.public; await r0; get.or_use domain_credits[r1] 0u64 into r3; add r3 r2 into r4; set r4 into domain_credits[r1]; function claim_credits_private: input r0 as NFT.record; input r1 as [u128; 4u32].private; input r2 as u64.private; call credits.aleo/transfer_public_to_private self.caller r2 into r3 r4; hash.psd2 r1 into r5 as scalar; hash.psd2 r0.data into r6 as field; commit.bhp256 r6 r5 into r7 as field; cast r0.owner r0.data r0.edition into r8 as NFT.record; async claim_credits_private r4 r7 r2 into r9; output r8 as NFT.record; output r9 as aleo_name_service_registry_v1.aleo/claim_credits_private.future; finalize claim_credits_private: input r0 as credits.aleo/transfer_public_to_private.future; input r1 as field.public; input r2 as u64.public; await r0; get domain_credits[r1] into r3; gte r3 r2 into r4; assert.eq r4 true; sub r3 r2 into r5; set r5 into domain_credits[r1]; function claim_credits_public: input r0 as field.private; input r1 as [u128; 4u32].private; input r2 as u64.private; call credits.aleo/transfer_public_to_private self.caller r2 into r3 r4; hash.psd2 r1 into r5 as scalar; commit.bhp256 r0 r5 into r6 as field; async claim_credits_public r4 r0 self.caller r6 r2 into r7; output r7 as aleo_name_service_registry_v1.aleo/claim_credits_public.future; finalize claim_credits_public: input r0 as credits.aleo/transfer_public_to_private.future; input r1 as field.public; input r2 as address.public; input r3 as field.public; input r4 as u64.public; await r0; get nft_owners[r1] into r5; assert.eq r2 r5; get domain_credits[r3] into r6; gte r6 r4 into r7; assert.eq r7 true; sub r6 r4 into r8; set r8 into domain_credits[r3]; function authorize: input r0 as NFT.record; async authorize into r1; output r1 as aleo_name_service_registry_v1.aleo/authorize.future; finalize authorize: assert.eq 0u8 1u8; function burn: input r0 as NFT.record; async burn r0.data into r1; output r1 as aleo_name_service_registry_v1.aleo/burn.future; finalize burn: input r0 as field.public; remove names[r0]; function is_avaiable: input r0 as field.private; async is_avaiable r0 into r1; output r1 as aleo_name_service_registry_v1.aleo/is_avaiable.future; finalize is_avaiable: input r0 as field.public; contains names[r0] into r1; assert.eq r1 false;