;; Storage
(define-map presale-count principal uint)
;; Define Constants
(define-constant CONTRACT-OWNER tx-sender)
(define-constant ERR-SOLD-OUT (err u300))
(define-constant ERR-NOT-AUTHORIZED (err u401))
(define-constant ERR-SALE-NOT-ACTIVE (err u500))
(define-constant ERR-NO-MINTPASS-REMAINING (err u501))
(define-constant ERR-ZERO (err u0))
;; Define Variables
(define-data-var mintpass-sale-active bool false)
(define-data-var sale-active bool false)
;; Presale balance
(define-read-only (get-presale-balance (account principal))
(default-to u0
(map-get? presale-count account)))
;; Claim trait for marketplaces
(define-public (claim)
(mint))
;; Claim a new NFT
(define-public (mint)
(if (var-get mintpass-sale-active)
(mintpass-mint tx-sender)
(public-mint tx-sender)))
(define-public (mint-two)
(begin
(try! (mint))
(try! (mint))
(ok true)))
(define-public (mint-three)
(begin
(try! (mint))
(try! (mint))
(try! (mint))
(ok true)))
(define-public (mint-four)
(begin
(try! (mint))
(try! (mint))
(try! (mint))
(try! (mint))
(ok true)))
(define-public (mint-five)
(begin
(try! (mint))
(try! (mint))
(try! (mint))
(try! (mint))
(try! (mint))
(ok true)))
;; Internal - Mint NFT using Mintpass mechanism
(define-private (mintpass-mint (new-owner principal))
(let ((presale-balance (get-presale-balance new-owner))
(index (unwrap! (contract-call? .panda-nft get-last-token-id) ERR-ZERO)))
(asserts! (> presale-balance u0) ERR-NO-MINTPASS-REMAINING)
(map-set presale-count
new-owner
(- presale-balance u1))
(contract-call? .panda-nft mint new-owner true (unwrap! (element-at ids index) ERR-SOLD-OUT))))
;; Internal - Mint public sale NFT
(define-private (public-mint (new-owner principal))
(let ((index (unwrap! (contract-call? .panda-nft get-last-token-id) ERR-ZERO)))
(asserts! (var-get sale-active) ERR-SALE-NOT-ACTIVE)
(contract-call? .panda-nft mint new-owner true (unwrap! (element-at ids index) ERR-SOLD-OUT))))
;; Set public sale flag
(define-public (flip-mintpass-sale)
(begin
(asserts! (is-eq contract-caller CONTRACT-OWNER) ERR-NOT-AUTHORIZED)
;; Disable the Public sale
(var-set sale-active false)
(var-set mintpass-sale-active (not (var-get mintpass-sale-active)))
(ok (var-get mintpass-sale-active))))
;; Set public sale flag
(define-public (flip-sale)
(begin
(asserts! (is-eq contract-caller CONTRACT-OWNER) ERR-NOT-AUTHORIZED)
;; Disable the Mintpass sale
(var-set mintpass-sale-active false)
(var-set sale-active (not (var-get sale-active)))
(ok (var-get sale-active))))
(as-contract (contract-call? .panda-nft set-mint-address))
(define-constant ids (list u1 u226 u358 u618 u729 u514 u372 u106 u594 u455 u383 u492 u187 u68 u37 u822 u140 u132 u465 u472 u135 u497 u342 u519 u824 u168 u393 u36 u758 u467 u498 u768 u517 u836 u181 u532 u231 u328 u559 u441 u575 u507 u687 u479 u270 u841 u534 u93 u558 u12 u882 u130 u570 u433 u109 u550 u560 u289 u295 u251 u436 u178 u605 u165 u201 u574 u175 u470 u173 u739 u401 u493 u379 u27 u704 u735 u572 u386 u314 u64 u695 u679 u3 u82 u808 u179 u44 u491 u458 u180 u530 u855 u38 u838 u157 u883 u75 u275 u281 u420 u249 u602 u490 u613 u206 u4 u801 u300 u194 u845 u191 u282 u176 u97 u72 u405 u555 u244 u475 u49 u521 u586 u252 u478 u345 u844 u214 u351 u688 u540 u795 u207 u724 u524 u408 u396 u789 u774 u869 u99 u593 u407 u95 u701 u354 u71 u339 u874 u428 u184 u580 u25 u298 u577 u260 u392 u223 u680 u563 u398 u642 u294 u20 u141 u705 u7 u87 u718 u18 u599 u812 u573 u215 u538 u453 u146 u544 u338 u879 u854 u740 u105 u488 u102 u397 u113 u276 u39 u81 u619 u792 u167 u798 u370 u221 u617 u362 u325 u843 u80 u196 u753 u564 u402 u713 u790 u446 u159 u316 u188 u496 u461 u104 u210 u658 u267 u59 u504 u451 u624 u341 u870 u421 u125 u674 u694 u311 u212 u482 u272 u193 u791 u380 u462 u162 u23 u147 u334 u350 u263 u352 u309 u315 u518 u634 u662 u643 u471 u692 u511 u297 u675 u813 u646 u100 u863 u630 u153 u411 u360 u723 u73 u101 u569 u163 u463 u810 u513 u213 u788 u216 u313 u268 u346 u456 u142 u205 u717 u610 u454 u248 u278 u90 u359 u742 u840 u228 u711 u238 u347 u797 u585 u415 u331 u773 u849 u620 u545 u349 u500 u337 u145 u413 u652 u741 u481 u438 u128 u614 u531 u752 u356 u865 u271 u301 u734 u583 u728 u261 u236 u762 u121 u14 u754 u802 u292 u154 u819 u22 u826 u807 u307 u327 u816 u659 u139 u269 u533 u53 u89 u427 u8 u647 u527 u596 u689 u136 u722 u96 u499 u811 u340 u632 u127 u225 u571 u170 u169 u79 u653 u444 u369 u333 u501 u287 u848 u414 u666 u842 u273 u604 u412 u785 u430 u330 u832 u389 u115 u678 u766 u185 u76 u324 u198 u13 u875 u217 u149 u117 u224 u16 u440 u503 u51 u732 u520 u784 u395 u681 u448 u302 u590 u567 u432 u426 u50 u468 u672 u486 u32 u265 u839 u15 u831 u782 u835 u66 u536 u284 u464 u237 u552 u29 u304 u381 u60 u644 u466 u387 u775 u144 u579 u787 u344 u5 u867 u770 u19 u864 u651 u439 u622 u98 u355 u41 u601 u485 u760 u633 u129 u878 u526 u635 u279 u119 u442 u134 u809 u460 u793 u625 u361 u866 u55 u35 u377 u806 u636 u404 u623 u91 u562 u767 u390 u366 u259 u384 u42 u744 u400 u487 u156 u853 u510 u649 u576 u6 u850 u9 u182 u727 u640 u584 u283 u549 u747 u143 u17 u320 u876 u254 u764 u656 u409 u756 u131 u33 u529 u655 u598 u160 u45 u700 u56 u262 u266 u690 u319 u502 u861 u310 u150 u306 u543 u537 u726 u603 u834 u888 u329 u484 u556 u326 u54 u166 u308 u190 u750 u648 u425 u616 u235 u332 u257 u246 u821 u661 u11 u650 u133 u771 u581 u833 u322 u285 u733 u541 u777 u553 u778 u597 u108 u250 u84 u218 u195 u693 u457 u522 u233 u107 u786 u83 u459 u353 u230 u738 u137 u234 u148 u670 u422 u245 u65 u884 u116 u247 u419 u242 u431 u480 u872 u371 u197 u761 u47 u565 u548 u814 u291 u219 u737 u86 u566 u58 u535 u626 u716 u698 u638 u403 u494 u312 u714 u2 u873 u388 u683 u561 u818 u161 u445 u241 u805 u227 u240 u505 u546 u443 u595 u477 u508 u639 u28 u255 u703 u676 u78 u830 u296 u749 u721 u745 u686 u772 u851 u43 u748 u317 u452 u61 u715 u712 u373 u628 u21 u720 u757 u305 u434 u710 u611 u606 u364 u399 u435 u62 u138 u759 u118 u608 u776 u417 u664 u817 u823 u416 u860 u512 u158 u755 u825 u589 u667 u88 u881 u506 u696 u299 u290 u111 u657 u691 u637 u110 u783 u208 u286 u702 u189 u877 u264 u887 u192 u862 u449 u629 u385 u600 u859 u123 u171 u736 u528 u126 u871 u763 u627 u280 u684 u348 u588 u557 u335 u24 u391 u731 u856 u357 u794 u730 u815 u209 u615 u885 u378 u796 u582 u183 u318 u837 u483 u124 u671 u70 u152 u751 u523 u52 u321 u202 u375 u232 u92 u746 u547 u677 u94 u63 u367 u31 u274 u437 u288 u709 u609 u303 u673 u857 u708 u707 u450 u803 u799 u186 u376 u578 u631 u820 u780 u827 u719 u122 u424 u663 u765 u382 u114 u258 u469 u368 u74 u591 u199 u363 u103 u410 u336 u781 u374 u697 u539 u323 u30 u804 u67 u200 u46 u568 u473 u476 u645 u151 u769 u69 u846 u525 u685 u612 u429 u229 u828 u343 u164 u847 u203 u394 u77 u743 u706 u277 u725 u256 u621 u551 u155 u85 u40 u509 u665 u222 u120 u660 u112 u406 u293 u682 u220 u699 u886 u253 u858 u48 u57 u779 u495 u34 u668 u607 u174 u654 u868 u172 u423 u239 u26 u800 u177 u243 u641 u418 u515 u211 u592 u365 u542 u852 u10 u474 u489 u554 u447 u829 u587 u880 u204 u516 u669))
;;
(contract-call? .panda-nft mint tx-sender false (unwrap! (element-at ids u0) ERR-ZERO))
(contract-call? .panda-nft mint tx-sender false (unwrap! (element-at ids u1) ERR-ZERO))
(contract-call? .panda-nft mint tx-sender false (unwrap! (element-at ids u2) ERR-ZERO))
(contract-call? .panda-nft mint tx-sender false (unwrap! (element-at ids u3) ERR-ZERO))
(contract-call? .panda-nft mint tx-sender false (unwrap! (element-at ids u4) ERR-ZERO))
(contract-call? .panda-nft mint tx-sender false (unwrap! (element-at ids u5) ERR-ZERO))
(contract-call? .panda-nft mint tx-sender false (unwrap! (element-at ids u6) ERR-ZERO))
(contract-call? .panda-nft mint tx-sender false (unwrap! (element-at ids u7) ERR-ZERO))
(contract-call? .panda-nft mint tx-sender false (unwrap! (element-at ids u8) ERR-ZERO))
(contract-call? .panda-nft mint tx-sender false (unwrap! (element-at ids u9) ERR-ZERO))
(contract-call? .panda-nft mint tx-sender false (unwrap! (element-at ids u10) ERR-ZERO))
(contract-call? .panda-nft mint tx-sender false (unwrap! (element-at ids u11) ERR-ZERO))
(contract-call? .panda-nft mint tx-sender false (unwrap! (element-at ids u12) ERR-ZERO))
(contract-call? .panda-nft mint tx-sender false (unwrap! (element-at ids u13) ERR-ZERO))
(contract-call? .panda-nft mint tx-sender false (unwrap! (element-at ids u14) ERR-ZERO))
;; Mintpass Addresses
(map-set presale-count 'SP7RKS2TA7SF2WC67CGQTTNX4HNV5D17AT0V52VF u2)
(map-set presale-count 'SP1NWCTK8Q3KYQMMMWFDBVRGVYRKZRSSEAMPD2P85 u2)
(map-set presale-count 'SP1J4SFHSMMT5Z0PG3WDD1TNGZVCWMB5QBYHNFECG u2)
(map-set presale-count 'SP1HV57E42VK2NDTEYXJGZ3EZQG6RZEZ0S9KMWJ0D u2)
(map-set presale-count 'SP3A1A7M58D9AW36SVA8377WFBR2T7H17MZBVX50B u2)
(map-set presale-count 'SP3T4NPZ7612NG78SKF6DT6VF5TXA9KDT0ZGD9578 u2)
(map-set presale-count 'SP2G9EJQ05EH8B067N2A16166WEYJA7ZGW2YZTB07 u2)
(map-set presale-count 'SP3A1A7M58D9AW36SVA8377WFBR2T7H17MZBVX50B u2)
(map-set presale-count 'SPQD0C8Q4WE38B9RSN9CPASEVQXTBX5YWNVP6BSN u2)
(map-set presale-count 'SP3QAFRW3A8Z7RWHQMK5P05QV6X76FPFD5Q2XJNYD u2)
(map-set presale-count 'SP12PPF953A2PXHNQ71VV48BBVEV848B251H152W0 u2)
(map-set presale-count 'SP2BVCWXJ11WBS29XY07C604S3H57YP00G8V593ND u2)
(map-set presale-count 'SP1M19Z0343XYX2VXYSAZ6NY6MP7CDC20N7NZN41R u2)
(map-set presale-count 'SPN7XJJT9PCDVZVZTF4SYFJ1BDSKCDTT3BJ0GW89 u2)
(map-set presale-count 'SP1QZQKPZ3ZEQ90489GEDTHNWWSE7XZ0462VFP77X u2)
(map-set presale-count 'SPJBHM414TZEE9PCB56MGMVPWFT1TDHSZQXG99C7 u2)
(map-set presale-count 'SP3X182G1NJ6EQ2V4PCP4Q9471YJX3N2J7WSQ2D69 u2)
(map-set presale-count 'SPS6543QSVCWM0B1CQYD67RV4QP3MGFPJEHG4FHS u2)
(map-set presale-count 'SP1G1GN9Y15X8CY9ZRC3RFX73077DHA0XS9Y6DA4E u2)
(map-set presale-count 'SP3J2A7Q28FVQVZQZ9618VBNNQBDEBE7YFPBVFXDS u2)
(map-set presale-count 'SP3KPC43PAJA0ZFEYNGZDWTHKPWKSHF8ARP2CQ6ED u2)
(map-set presale-count 'SP3ATCF0CYZ9S1K2R348Q3ZQRZKQZ6SZSCEQ7ZSHK u2)
(map-set presale-count 'SP33QWVZAJZJGB5KXSM8MFWWGQDV0S74F8SYSCT0B u2)
(map-set presale-count 'SP1FGM5QJ87VZSZNR65FHG3C2F8Q05Z519GDARGHW u2)
(map-set presale-count 'SP2XZXH4A7F82FJY2J98Y2V90S05Q4HYMNTNDS50G u2)
(map-set presale-count 'SP3RX5Z6FAAX8J9BKT5Y0ZN5ZZWV2S904BJCN48CM u2)
(map-set presale-count 'SP176V8MMRKGSWXSDGZKZJSZ6EW9PF2GAQA2NWVT2 u2)
(map-set presale-count 'SP24Q1Z6PTM8NY25EV53ATRQ3X18A0JH1D9XT2AMB u2)
(map-set presale-count 'SP3ZYJMRF14KHT1AS1V4P4YBT68YMCZE28FSMVKCA u2)
(map-set presale-count 'SPHBRXG7KXFPPZP55REPERJW5Q14BB5P1G7A44JR u2)
(map-set presale-count 'SP38PWQ4BCMPFCV9KW4JAF8JBBH5TQH2NZ457A0BM u2)
(map-set presale-count 'SP1CQXWG0N2DN0HWQP2AX0DEVRTHCD82MY4S21QMJ u2)
(map-set presale-count 'SPVN3VP8DWXY3KFDAEXFK19AYQ2KQ8N1PS62AFGY u2)
(map-set presale-count 'SP3A6VYAFPGC0EKM94C9PYBAYPG7MR6Q4E93A0PAG u2)
(map-set presale-count 'SP3Q6XYWRBN3QR0Y92K0VVJ46HKP5RHXMN70EFYP7 u2)
(map-set presale-count 'SP245A450BFV3NAWMS6FKW0PNXAS800YY8Z2KD8PA u2)
(map-set presale-count 'SP1PFHACFW6JD16PPE2DY2W7CE6Q89JF28NBCRN0M u2)
(map-set presale-count 'SP302E5HK6CVTN4JD3VC852XDSRRZ1B9EB9QGYJC4 u2)
(map-set presale-count 'SP1NKET54GCFDCM2B7V5ZMEH9MQD8J8EFBA5AC8M6 u2)
(map-set presale-count 'SP2FTAKGJEKQZ2B64Z2H5S721W9JA1423TRZMADD3 u2)
(map-set presale-count 'SP2R04STPM9DJD86XPQGMYH7PG0MR7YZKN7G85ZRP u2)
(map-set presale-count 'SP2SCYTFCWKY0QERFZ2K57AQ2XVEHQ14WZSAW7455 u2)
(map-set presale-count 'SP2Z4MCB2488PSASQHWDA2J3G2CG7TDETT8TK5QA0 u2)
(map-set presale-count 'SP87H2YS5D1NN956VM5G9PRAV5A7X52NDX3GM3ES u2)
(map-set presale-count 'SP34AD6WHCDNS3KDRHREA4M1YJX7Y8PA3ZYERCPJG u2)
(map-set presale-count 'SP2NJG19Y0NMWDCQRPHCZGADW6ZA5EDXTN13ET0YD u2)
(map-set presale-count 'SP21QHRM49N9ZD6RR2VZQGCGW0RX9Q47G6YWZA9YS u2)
(map-set presale-count 'SP2EYP7917X5JVW66B8330Z1K08XP73PXX71A1K00 u2)
(map-set presale-count 'SP1RRXV2NXHVX3ED9SSWVGP7NHR3T6YRVTWYNEPTX u2)
(map-set presale-count 'SPAJ7HG1A8ANSMSHGGBQQ2KVYBVW2DNT897ZFJT9 u2)
(map-set presale-count 'SP4S80GKM3V86M0X5324AW16FACWVMPG8W4E0SN5 u2)
(map-set presale-count 'SP372F8V36B9BADAXPXEAH16ESNXC9T6V5QFGBZSD u2)
(map-set presale-count 'SP32G6WKJQH517WGHSQ4W04CAMC32X77B0MZ7TH11 u2)
(map-set presale-count 'SPWC77BBYY37MB0X3SE0P5M48TTMWME3BEBMSZQ8 u2)
(map-set presale-count 'SP160TXFF7E884VYFBP58N2N8XYP0ZB9BV6N0160M u2)
(map-set presale-count 'SPFBFVBKW2YPWJMJ087H4BMQ2NHMP9VETSHEZHGD u2)
(map-set presale-count 'SP2RN7TDAQBE06M9D13WZYDX8P0NPBCBZACPE6V99 u2)
(map-set presale-count 'SP1BHFC9MFPFZBHTXPVTB4268GNHA4JCPV4XNHDPF u2)
(map-set presale-count 'SPHPGBNFA4PK7NCVWXZ75CPPRA9Y8W0P6G7GV8KA u2)
(map-set presale-count 'SP3GSPSSX0XCS6274XCGV76R0NS8K8WDR0RNKQ3ZB u2)
(map-set presale-count 'SP3V42XS875QXAWZEYJTVH6J2QVX60VWJDH0NPG40 u2)
(map-set presale-count 'SP2FPQCD12GR5ZJFDB7FHXWYYDBG8HMXF8JX9SBW8 u2)
(map-set presale-count 'SP329JWBYHYMESG48BY5YGCV44AAGC4G5M1N65NCE u2)
(map-set presale-count 'SPTPRTY1WJ50H3VE91RB17WRW7EEB54CV16AGMF8 u2)
(map-set presale-count 'SPDVB5RJJKRQSA0HC8C2DFERRPPX8E8NWJM53T8E u2)
(map-set presale-count 'SP2HNXWJ67H6KR02WNZPP3EJH7JSD1RQ5YDAE6EXH u2)
(map-set presale-count 'SP1D62AA74BRS95GJ62QAJV3SY1JCJX5FFX22JYJE u2)
(map-set presale-count 'SP1TB5YK2B3AMD69SPH332MWW10YAYD8M1PZD996Y u2)
(map-set presale-count 'SP38VD1J88PTE9D3TA98QXZ213SV7ZTAWJ1DY0QSR u2)
(map-set presale-count 'SPN07FWTHZ223PCFB28J94R09QK074R1P6KHCP6K u2)
(map-set presale-count 'SPJEXJGNXHZMKCXXWQFR2PP69KHGCBM47NYDK0NA u2)
(map-set presale-count 'SP1JZMWB5QK29H0RVZ3544PVAZ2EVR5YC0S5R59B5 u2)
(map-set presale-count 'SPBCC2A244VH7M57BSS88SRB13D34H1TGERWM82E u2)
(map-set presale-count 'SP3RFAZMSH6YA1KTJD7DN997AG2DG54E3Z9ZJWYN8 u2)
(map-set presale-count 'SPX7A3FDBYW3DKR2PBWQFHPHQVKX8YVV9ER4WASZ u2)
(map-set presale-count 'SPMWYQQK53586RNC7EE394S0947DEYQFKR24911Q u2)
(map-set presale-count 'SP3PV9WJDHF03HN95K6XRMCTY40HADGE0JH536KQJ u2)
(map-set presale-count 'SP159CC8V0PREP2YX0HCK1901AQ11V2CY9RK412NX u2)
(map-set presale-count 'SP1Z1YAEEFP3MXRDZR1V245FCKVRX7MTTXJ0B11QT u2)
(map-set presale-count 'SP2TPGRRYCDTCNMFAF4QZQBV6GYXF2370GV0B3SP4 u2)
(map-set presale-count 'SPBH4D4MCCGJBKF3CAT5DTPYDP0179097FF5PJ0A u2)
(map-set presale-count 'SP3H9AH97MBEPCH1Z7EP4SNCSEG36Q4NPFXG0GD08 u2)
(map-set presale-count 'SP3NTJPAFYD9AB7RDF9YJQ3G0ZDS87S5AT0H62J2R u2)
(map-set presale-count 'SP19CGCGWT8AYYQ1PTCRJW1P0HNZ334BJF6N0VNYK u2)
(map-set presale-count 'SP252MQGJFMVFTQSYB149R2J71E75A1MFF84N44MM u2)
(map-set presale-count 'SP3WQNYK5DWET76G5TM3RFFGH9GCPT8M011S9F72P u2)
(map-set presale-count 'SP3JNDEHQHRBRV03MY792FW3Y3MJNDKG4MRKA22NN u2)
(map-set presale-count 'SP1CWDKM22D3PRQHV52TKPYREQW196F9BJ7AH2ACC u2)
(map-set presale-count 'SP141GBE6ZN985DG7AXD6NC44YCMWKF6SQ78DG7WX u2)
(map-set presale-count 'SP2D5TEN0XD1PARJB1YE218HKXPYYAHR4EX1EYGBZ u2)
(map-set presale-count 'SP206ABMQY6BWT8HMGQEJNQFNSQR89952KQ27F9WZ u2)
(map-set presale-count 'SPJMM4BZ69KJAQGD3H8DGG13KA9W69DAYY7JSRW4 u2)
(map-set presale-count 'SP2PSD7X54WN8R0EBBHW1X3M80NERD131Y8BE5E5P u2)
(map-set presale-count 'SP2QR5128WHFDK8XCBBHMXV6TMR4G0MPHNSJG39JP u2)
(map-set presale-count 'SPST8544VG4EWKM6K8ZBMXKD1F5C30K262KKWWY u2)
(map-set presale-count 'SP1JD7HEEWHEWPRW4A6Q52E7NY5HDMEADSC8RAQGS u2)
(map-set presale-count 'SP3511THNP0VR18GG0RYK2319EVKTJSX0EN2QABMQ u2)
(map-set presale-count 'SP1MWQ160TBKT1D6ACQWQ2QS69AP35KAN0FCSW0HC u2)
(map-set presale-count 'SP1GNMDCKF5MDHR129DV36C5WEF0NR0BFSJ5497FP u2)
(map-set presale-count 'SP4CVGMXHGQPZ6G529ATC6DHTNHXJ87WADJ6NZMD u2)
(map-set presale-count 'SP3DVG2WMQ4ENX1WAGV52E52AA5PMPVG322MH7NJN u2)
(map-set presale-count 'SP3741J2Y4Z7QN9EC5YTAKCSVQ98JP94PS6D65BAD u2)
(map-set presale-count 'SP1SCWH1SFB8D6BMXW5CFQ7KABRKEGCMTBH97HAQ7 u2)
(map-set presale-count 'SP4CVGMXHGQPZ6G529ATC6DHTNHXJ87WADJ6NZMD u2)
(map-set presale-count 'SP3SFCD966036VFN4SSF0XT0E3Z63GGENVRW5PWK8 u2)
(map-set presale-count 'SP314X0DX7G0NKNB4R94N2NM5K8CP2NSJM9EWP1YR u2)
(map-set presale-count 'SP3DTK2V1VBPDDBD5WRN02H4SWB0VGSP2QNGG2D3T u2)
(map-set presale-count 'SP2ZARNY0WTETN51WYCKACAPBD4DCRTMTFBA07AH1 u2)
(map-set presale-count 'SP1G7JHKYTDF6371FYYY97X0R0GZH5NGM8HFG17VS u2)
(map-set presale-count 'SP80XVN3HKKC8CG6558BMJ37XRFRFPJ40XY6W5ZN u2)
(map-set presale-count 'SP31ZX8YK13VTX189TR2PQ3SX0H4SBFJ5EK8S5BT1 u2)
(map-set presale-count 'SP3NYPJ5DCTMJ06M9TPHVYXGSK4NPEG6XAW9WJ0EP u2)
(map-set presale-count 'SP1FM58H2QCCFHE8K9VFHQJ3VDKP33AWETSSRZKB2 u2)
(map-set presale-count 'SP2AK15PKC4W79VTF0XMYR1PEZP1CBWNZWZVA80DA u2)
(map-set presale-count 'SP3TKG9A4PQ7TW3HQEPYAD1A8QY4H6W167R5Q7W9M u2)
(map-set presale-count 'SP3MA5RGE7V1SVW1ZM47X8GG2NRJ2P1H5QDJJ31QQ u2)
(map-set presale-count 'SPN7PKBPJCE8CFTBNBC5YBRS9F84XE3ZXR35Z786 u2)
(map-set presale-count 'SP2ZTG8ADF801FNMQZGPHWC2XQ904ND580XQW2MNV u2)
(map-set presale-count 'SP2HG8GDYRW8YX2NRZ4ZHX5451FRVANP1SRHCHVXD u2)
(map-set presale-count 'SP1139QJFJDP0VPVSW7QV4CEPQY1WZ8ZGTZ5W2CBE u2)
(map-set presale-count 'SP1K6N1ATWRY8E48G3Z2QSNG5J8VCXZW1XV9YMMQM u2)
(map-set presale-count 'SP1H3FQSXP1CYTW113HBS72G1TXWZG12AXQB1JM6T u2)
(map-set presale-count 'SP270E86A11CSM9Y4KBD7RNJWSHV9CPWWCTP4MED8 u2)
(map-set presale-count 'SP2RXP07TR1DCBTW29MT1592Z4XX6EZY565Y0S031 u2)
(map-set presale-count 'SP2K6EFFXBBXGWMWRK1PDBA37X9F8PB4767A5WFTX u2)
(map-set presale-count 'SP3VH4PSWXB58DSRXK5Z6R73VPBYJAZ9QQT5Z0PPQ u2)
(map-set presale-count 'SP1V9T447C7R818KFZB3P33VFXRRQSTMBGKN15H5M u2)
(map-set presale-count 'SP2GGWCPBXHQWD5KWYZ7SM9D3MQVG48DTA7NX179B u2)
(map-set presale-count 'SP1WD33DFCCNBRKBG7WXFY8W7F2WHXD28Q01Q4BMY u2)
(map-set presale-count 'SP1NBYYZSPVNYR7PHXYX1WRX5BQSNQS0T78FWMYVV u2)
(map-set presale-count 'SP2D3NXHZGX37JDHJY9WCP9CV9F8C5HZPRJFEAVMN u2)
(map-set presale-count 'SP22N2095RX4D5Q91GNX5VHVW4S900TDVRFN87NF5 u2)
(map-set presale-count 'SP1M3DM07NSZJCF2HSS3PDW4EF777GC16ZHJ2TEMF u2)
(map-set presale-count 'SP2KXSQ22DFD7KVSB9FXYF0P8SRNY4ZV83VMYYVQY u2)
(map-set presale-count 'SP3W1S9BXWW7SXR5JKGFFYH32QCQTYHZB9CPT3RKC u2)
(map-set presale-count 'SP169KH4JF7RH42BFT73EFWQHH4GJD16KX57G6DET u2)
(map-set presale-count 'SP130NQNKPXKWFST4CWF2AN92XYNE3S9ZV904FJBY u2)
(map-set presale-count 'SP42JNV8S4QVG0EBF6B5KRWTAQXF47XNEARWQXY1 u2)
(map-set presale-count 'SP3376B7C33BWBMYCXRHYS78W4DWXJ129WCX4YS3W u2)
(map-set presale-count 'SP3HW37F0DQXXGNADWZHN4C9N1MS3KZY35Q09Y8KP u2)
(map-set presale-count 'SPF0F5517CYCGM36EGPQ39NF0XZKRXDN2YQZW4ZS u2)
(map-set presale-count 'SP1MMY3E82PRZJ5DF4ZKECCRCN6Y781Q2Q1KH69H4 u2)
(map-set presale-count 'SP2WZR4SZ016YPYXX3GJJ8ZMRY37R0J8ZPTWVTRAB u2)
(map-set presale-count 'SP2W69XTKBABSZH9DRC4R1P3BPG10E5ZHBZ6CRZBM u2)
(map-set presale-count 'SP5DEMGW5MRGX3PNV5HYF1KGA5RF16VJDSMRCAZJ u2)
(map-set presale-count 'SPVP2T4N5H3D5EX5WNBPTJMJFMNHEB4BQPPPEFHA u2)
(map-set presale-count 'SP2AYTSCMDSQ14NXHQ7N70R3BVM3A4KBT294H8GDQ u2)
(map-set presale-count 'SP36WX2N39RMYDGGNAHE4YBSMK478DXH1ZDR1FMAR u2)
(map-set presale-count 'SP3E6XQ6MYQXPJJX8ENZM9N8GW38BK64CD4TV6E1G u2)
(map-set presale-count 'SP2G65T7SGJ0DBJ1JZN46TGRGBJKRHF3BZMRPYBAP u2)
(map-set presale-count 'SPGG087FWD8EMW0R4PPER4AXTSS37WG71Y1B4BHZ u2)
(map-set presale-count 'SP1AXT21RJWQZ7SS9ASPA96R30GP0BZWFT23350G u2)
(map-set presale-count 'SP63AJDX363FX42WABA3DRGXTA6989RP1V1SAVZG u2)
(map-set presale-count 'SPNQZS8RRVERSZSVSH4EWXQ9VXFDDD6PPPNS4MEM u2)
(map-set presale-count 'SP1B0XREMW9ERSVEK285V5YXWFP9SFXA6Y9QG6FF6 u2)
(map-set presale-count 'SP3FJSBM29Q96YQV8KC9Y5D4VXDZ64X5VAEQ3TEVE u2)
(map-set presale-count 'SP3G5QM7QVC49H8450FAK02664JN0AWYHN4CJ0NKK u2)
(map-set presale-count 'SP1V2M4PF9JMYG1J532JMM59N8Z713XE0WH0SSTNH u2)
(map-set presale-count 'SP3J60S62QP1X0G8378E79661YZWAJFQZ9JXHJAN8 u2)
(map-set presale-count 'SP3JB4NVV73GMBRTPK8X8VE0CK03F342BXMGAW9Z1 u2)
(map-set presale-count 'SP3JRVB2JE11HEBF5JWQ9PQ749F6F3JF51S54QTQF u2)
(map-set presale-count 'SP1ZF680GN2AHB17NM5EEK5AR69V8K0DT2F7NKWXW u2)
(map-set presale-count 'SP2FZW45312SEZTMY05DXDJHAN7FA16MABW14P0PF u2)
(map-set presale-count 'SP17JJMKB5WH6YYXFY9QV27HJ40JFKYDQAAMSWB7H u2)
(map-set presale-count 'SP3J0TD50Z9J64RBN08N0BF17TN89V3JHBKT44HQK u2)
(map-set presale-count 'SP3DC687WNZAXQCACHXACGB1EX8X5WJXVT03MQ70C u2)
(map-set presale-count 'SP1DMRVG0TTJK40RWZF750WDC3NCAQ4Z4FQVNFSQQ u2)
(map-set presale-count 'SP2T26CQ2FXDM5ZS0CAD5H02205BMY9YGGHDZW8FH u2)
(map-set presale-count 'SP2CNXYR33XNK76V35SA6N92EDK1Y5CFSX4NNEE2B u2)
(map-set presale-count 'SP1NTGBEK00GK3263RMJERB4BBYBQEEK4TV2R6W5E u2)
(map-set presale-count 'SP37W6M7HY9H9KX0RJ6C5SYGCKHK56SR1WH660JDQ u2)
(map-set presale-count 'SP1P670EMNT7C9S7PNAYAK79NSGRB39SX7E7RE1NT u2)
(map-set presale-count 'SPRXVJJTT33VP9Y35Z6329C2AWPCZWFBEEVSM1SC u2)
(map-set presale-count 'SP3AF7N5ZKAHMSTG6FDSPQF1T2NV5BMVGBSDP2ZGE u2)
(map-set presale-count 'SP1D6K3G95CE3M8THTEDQ1RD3R8RV87QPH6Q6YY63 u2)
(map-set presale-count 'SPDTJ551Y37V01CC403PRA48W67BJXPMDTB7FKJZ u2)
(map-set presale-count 'SP11FKVDHMTT53D22BNNJRFQ0QK173W9RFMB86YXS u2)
(map-set presale-count 'SP1NAAXDR1D7EWXXFJB924P0EYZ0RYQAE68J3FZCZ u2)
(map-set presale-count 'SP1Z2Z3PHAEF8C2AD4843HHTAZVGBZYVRJMST1W1G u2)
(map-set presale-count 'SP2V2HF7EAGJHXE657Z9TXNWKFEJSA6R7TMCPJQDQ u2)
(map-set presale-count 'SPT5PYZ0EDEE34QYCT67Z4DTWDWTEEF4DAS19CWB u2)
(map-set presale-count 'SP20J35YF7MME61PD8AZH7MYQ39BW5MEYZR3RJR1N u2)
(map-set presale-count 'SP1QY5EX401H972ZBYM4M8G7JWN255Q7M0CQVSJV u2)
(map-set presale-count 'SP1VCJ3VDE2XQSTDN3QRVRY443T029VXAFREFB7TC u2)
(map-set presale-count 'SP5H2A8S7EW5M33NB3MDNHCW972GGDSZ1XAGGY67 u2)
(map-set presale-count 'SP21TZ7DHXC64RJ5Y5B1RZMZZV40QVQQ0V6V3K7A u2)
(map-set presale-count 'SP3B5K4TFFQV6PNMPMCKHT48V31Z2VJ377HNQQH8K u2)
(map-set presale-count 'SP1QXG1E1YZN48D0WXAPFXF7644X6W132A77EZEAA u2)
(map-set presale-count 'SP3H0JBA0YW8KG7GXE8D31X4A3T9ET1PRPTVDKMYV u2)
(map-set presale-count 'SPFQ1ZDF3XF50VVTKTHAZJNB5YSSD5HS43NZ8D1B u2)
(map-set presale-count 'SP35FRWRZPEQP9H77SEXWBXBXHYEX15CP1GBR5C9N u2)
(map-set presale-count 'SPH9QBF7AZ3D9PGWXAPH3RDSCX4PFX0PPF8Y4Q4W u2)
(map-set presale-count 'SP1HWAF5P8RAV7E0V7W6QJM3V326KVP666MDEJNRS u2)
(map-set presale-count 'SP3RRPJPPE92RE9AJ2ZTEGFG2H37C27KC8P5DCSPT u2)
(map-set presale-count 'SP38QR1BWR65ECXH0EQXR2EJRX7952WXMXEMPY4DG u2)
(map-set presale-count 'SP12V4ZZBCK89TDY0NVD4MQPSP67WYE0QGYQ26VG8 u2)
(map-set presale-count 'SP1YSAAA98YPJZAWPEENCWAJ5EBYJZJE6YA89TQSE u2)
(map-set presale-count 'SP26MBHZWS0Q29BH4D95PDJCVVRAMFZKDCNXDWTP8 u2)
(map-set presale-count 'SP2JGKF0VDSMNVYQXDZS3ZTZT6C9NX9RERHRP01H6 u2)
(map-set presale-count 'SP3SF0PSD7KYVJQPKKRBYJFF7NENGFHZSBVHM3B27 u2)
(map-set presale-count 'SP34JH0GSVGVE7WYRSAZ24X8K4542EYF2CW8PNX4D u2)
(map-set presale-count 'SP3CR3PD05JQH98PXQX06WHGC5S9AQG3YNJA91WGK u2)
(map-set presale-count 'SP38QGA7KTWFZB3BK6X7V724W4Q0R4331DRYPE49P u2)
(map-set presale-count 'SP31QNDXTMCJ69850ZVYYXTGCKG7F7V3V2P7QY0Q9 u2)
(map-set presale-count 'SP1AA3G0N8FS2PPNPHRNWZ539TRBSJM9FP4YQF8MK u2)
(map-set presale-count 'SP3ZFZDY6A9E6JM0YYPMNNDHK9QV0HFTF5YWDR5M2 u2)
(map-set presale-count 'SP4R3KZ8ME52SS8ZXGNZ2JK4WF9EJDRPN75HEW68 u2)
(map-set presale-count 'SPQTEQW927WKR43091R3HV5R6KKR65NCZMMBSQZV u2)
(map-set presale-count 'SP3NEQAVFACE7XXT188P0W7VP8CT7RT8YACZA3RSN u2)
(map-set presale-count 'SP33S2FDZ6MADYYB5SAFPFS5GJV3TG3WC75WAE6VG u2)
(map-set presale-count 'SP1GYBJFM9BMNKNWACDKTHBEZEPM7Q8HC4RJ2QJJ5 u2)
(map-set presale-count 'SP1NNA2EPMH1QWMYP976P3S47FX1J1YKXQZD5QES3 u2)
(map-set presale-count 'SP152DB3GRAY3AJNV6DXQHHH8NBJ359M9H509QRBT u2)
(map-set presale-count 'SP1RJJV09SECKQKHEHDFJZB6WYCYB2375FHMS8VPV u2)
(map-set presale-count 'SP2T2K03MXKTT15Z5064QJ7GZJW7FC8NJ6FFAASST u2)
(map-set presale-count 'SPMC8MRMCCD8YQ1D3YQFZZWSGSK1JRWGCF8SJ4WY u2)
(map-set presale-count 'SP779SC9CDWQVMTRXT0HZCEHSDBXCHNGG7BC1H9B u2)
(map-set presale-count 'SP1NK9WNAMWFVHBDY4D32EHJQGQYXFJ4PG0WK39P9 u2)
(map-set presale-count 'SP2C20XGZBAYFZ1NYNHT1J6MGMM0EW9X7PFBWK7QG u2)
(map-set presale-count 'SP3RKSRZTRN4ZGCJHAQ8M91CMPWNCDYN2MQ8KFVNH u2)
(map-set presale-count 'SP3SHDS5SG73NFSEW6N2CXB789PC8QRX2QHQCNS8Z u2)
(map-set presale-count 'SP3K8Y699438N2Y49X0SCDRR9C646A316NG2CCPKK u2)
(map-set presale-count 'SP16AHSJBN7H65PWKXW79Z7E9CFJ07V0ECF4CKR57 u2)
(map-set presale-count 'SPHWCHVHRY2Q4884XNNSV8B3J1T41PBN0GQE16A9 u2)
(map-set presale-count 'SP3T0AFGSMNE8440NS5B3GMKVMY479FVFYKYJ23FA u2)
(map-set presale-count 'SP3NEEMYGWNS9D7APN6A5JQJSYAR3BKH8P5H82YS8 u2)
(map-set presale-count 'SP2P3STC1T3TJW1BSECX9S88JTQZJT2RBQNR60PKB u2)
(map-set presale-count 'SPEVKDK8QAYQP4VAGMMG3N7GBT3KRZ4MN6G236PR u2)
(map-set presale-count 'SP2WWWXGZY3ZYB924M8MCZR79BT7DKXP2SFJQ3J60 u2)
(map-set presale-count 'SPA951MKDTN3XX0FWW4GRFWT1TV07CYAE9BWKH67 u2)
(map-set presale-count 'SPZ3VMYZ4CJV3ADFD0VXT6H7Y1PCCWJ3ZDQGY8FV u2)
(map-set presale-count 'SP272G79GSJB7BZ66PRF3GBS9VKS65J3F9B5VS901 u2)
(map-set presale-count 'SP3CADMZ2J310FFYNBW3MX4HW8QFX9C5PD4T97Q8K u2)
(map-set presale-count 'SP36DHK0QACYS0FNVZ0Q5HMA10CD29XZNE029QX1F u2)
(map-set presale-count 'SPRE2B9P0Z1P5EV2Y37Y70GY35R56PJS54GBJCNY u2)
(map-set presale-count 'SP8972Q24MDC5QYTDGR3R5ZVJKKWADP0Y5EXJJG9 u2)
(map-set presale-count 'SP1FH8YPWD0FDRSWDA52RKYXES0VAG2PWNMQ3QNFF u2)
(map-set presale-count 'SP2VBVK41TZJWW9B3142BHH3JFZN0SW69XJ0JV6QQ u2)
(map-set presale-count 'SP1YYY622AP8QKS36TZ28NZ85GX3ABXV8P1ZPXTDD u2)
(map-set presale-count 'SP1TJR39177C1TKBYDYFNFJZ5D22HE9WKNH3MNNK4 u2)
(map-set presale-count 'SP39SQEG539X1AX7X3KXE88ZH25R0MNBKX56SCR2R u2)
(map-set presale-count 'SP29VBJG1289TNZK8AN9EA818VBBMM92CSGY7KDGE u2)
(map-set presale-count 'SP22CD66XQ9TTKY3ESXJ4JNH6ABMGPK039HGY5PFJ u2)
(map-set presale-count 'SP2S9GJ32DBX44CK8HV2P6781EA388PZYFQRSKR5G u2)
(map-set presale-count 'SPJ25PPMNNVYSHRP9ZG6D6KXN4R7B4JFKQPRSFK3 u2)
(map-set presale-count 'SP2A3NRX071PCRMS1C4K9FPSJPJDJHQPP9NJTSKBV u2)
(map-set presale-count 'SP1WYHPJJVN3P0PS32BMF33P6WVVK1SNRRS28ZF0G u2)
(map-set presale-count 'SPKTEXGCMJEQ7DG12ADXMAEKSNNSH3H8E2NHA141 u2)
(map-set presale-count 'SP388C5XPYGRGCR43A2A568C1VMSF4CJJZ77XWXCN u2)
(map-set presale-count 'SP4D2EB2B56BP7FESRKRWA765E6WA082SXATEQSE u2)