Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update mainnet and testnet checkpoints #72

Merged
merged 2 commits into from
Dec 4, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 16 additions & 3 deletions src/checkpoint.rs
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,11 @@ pub fn get_checkpoint(block_height: i32, is_testnet: bool) -> (i32, &'static str
(993600,"0192f0897166869566a11e267c3430a2714df579d94eaa9fd4c8a5174073d87b1b000d014f4c17968939cde8739bd08f7486618e4e440cba61653bf84434ac356b77d36b0001e105bf42db29eca36e7235bd55546726753d1f967c3f284e243cbb3b3375d95a01a3ce8339e68a22d91b0750ef45468efe763e3d5e3a6e59809ddadcc94fe73c6c01494803bd8e6b730cb277701c613a4e7355cb54f79653724618e1436c02fca30c0177d25b5ed812af45eb46b54bc37c3fbe08fdfb4d952bb917fe59187bc78c42640001088b8a9fc4769017f3fdf865637e5cebbeaf7a4c643247723bf009da5eb1e4340001e877753448933a336fcf9399cc3dcd357344510c79db717e976979cb2eab612d0001cb846820acd916b4ea03b0a222b3eae8704bbd5365f105156041c578bd214c3201e03719b3810c7a9eaf6680ad3c60fb5ffdb0106975c952ef173c3e8cde943b03"),
(1036800,"0192f0897166869566a11e267c3430a2714df579d94eaa9fd4c8a5174073d87b1b000d014f4c17968939cde8739bd08f7486618e4e440cba61653bf84434ac356b77d36b0001e105bf42db29eca36e7235bd55546726753d1f967c3f284e243cbb3b3375d95a01a3ce8339e68a22d91b0750ef45468efe763e3d5e3a6e59809ddadcc94fe73c6c01494803bd8e6b730cb277701c613a4e7355cb54f79653724618e1436c02fca30c0177d25b5ed812af45eb46b54bc37c3fbe08fdfb4d952bb917fe59187bc78c42640001088b8a9fc4769017f3fdf865637e5cebbeaf7a4c643247723bf009da5eb1e4340001e877753448933a336fcf9399cc3dcd357344510c79db717e976979cb2eab612d0001cb846820acd916b4ea03b0a222b3eae8704bbd5365f105156041c578bd214c3201e03719b3810c7a9eaf6680ad3c60fb5ffdb0106975c952ef173c3e8cde943b03"),
(1080000,"0192f0897166869566a11e267c3430a2714df579d94eaa9fd4c8a5174073d87b1b000d014f4c17968939cde8739bd08f7486618e4e440cba61653bf84434ac356b77d36b0001e105bf42db29eca36e7235bd55546726753d1f967c3f284e243cbb3b3375d95a01a3ce8339e68a22d91b0750ef45468efe763e3d5e3a6e59809ddadcc94fe73c6c01494803bd8e6b730cb277701c613a4e7355cb54f79653724618e1436c02fca30c0177d25b5ed812af45eb46b54bc37c3fbe08fdfb4d952bb917fe59187bc78c42640001088b8a9fc4769017f3fdf865637e5cebbeaf7a4c643247723bf009da5eb1e4340001e877753448933a336fcf9399cc3dcd357344510c79db717e976979cb2eab612d0001cb846820acd916b4ea03b0a222b3eae8704bbd5365f105156041c578bd214c3201e03719b3810c7a9eaf6680ad3c60fb5ffdb0106975c952ef173c3e8cde943b03"),
(1123200,"018c325f63f5cc98541cfef957f64845c86cf928e317ecc71a14debd364c7b8f57013c6f50deb5f788d5ac9105915ab9cbcda21a101d267c6424aa75b6e8df969e480d00016a2b0e3728a820b7982d81c87b80468ce65a4081843b890307115ca896416f3901e105bf42db29eca36e7235bd55546726753d1f967c3f284e243cbb3b3375d95a01a3ce8339e68a22d91b0750ef45468efe763e3d5e3a6e59809ddadcc94fe73c6c01494803bd8e6b730cb277701c613a4e7355cb54f79653724618e1436c02fca30c0177d25b5ed812af45eb46b54bc37c3fbe08fdfb4d952bb917fe59187bc78c42640001088b8a9fc4769017f3fdf865637e5cebbeaf7a4c643247723bf009da5eb1e4340001e877753448933a336fcf9399cc3dcd357344510c79db717e976979cb2eab612d0001cb846820acd916b4ea03b0a222b3eae8704bbd5365f105156041c578bd214c3201e03719b3810c7a9eaf6680ad3c60fb5ffdb0106975c952ef173c3e8cde943b03"),];
(1123200,"018c325f63f5cc98541cfef957f64845c86cf928e317ecc71a14debd364c7b8f57013c6f50deb5f788d5ac9105915ab9cbcda21a101d267c6424aa75b6e8df969e480d00016a2b0e3728a820b7982d81c87b80468ce65a4081843b890307115ca896416f3901e105bf42db29eca36e7235bd55546726753d1f967c3f284e243cbb3b3375d95a01a3ce8339e68a22d91b0750ef45468efe763e3d5e3a6e59809ddadcc94fe73c6c01494803bd8e6b730cb277701c613a4e7355cb54f79653724618e1436c02fca30c0177d25b5ed812af45eb46b54bc37c3fbe08fdfb4d952bb917fe59187bc78c42640001088b8a9fc4769017f3fdf865637e5cebbeaf7a4c643247723bf009da5eb1e4340001e877753448933a336fcf9399cc3dcd357344510c79db717e976979cb2eab612d0001cb846820acd916b4ea03b0a222b3eae8704bbd5365f105156041c578bd214c3201e03719b3810c7a9eaf6680ad3c60fb5ffdb0106975c952ef173c3e8cde943b03"),
(1175077,"018490b674ce828cfb64f271da1ac0fdff784313315d23b4682a827a394cf4111901d59903526edbad2d0f5df2f889a2abc229e46972ceaaa99f202ebdb03e9f74110d010c673b763caf8f3d9a03cf52300eaac206b434f097dad619189c639a2543c55401d28c0f40252eafb4ee224a73d634c719c5a2af270881e649a6d00e2c3fe5f732012fb291fec26ff4a38b6c29d1c346e33443237318b1242192a32b47afe0b70d120001f87acd9fd0447f9c842cc97c3136407d108ea0aa0a268b97f6a360eaf4708d63000000000001989234edea8bfa99c9c599eb577a8b90427c12ef50ee7fa0381d0997bb59df5201cb846820acd916b4ea03b0a222b3eae8704bbd5365f105156041c578bd214c3201e03719b3810c7a9eaf6680ad3c60fb5ffdb0106975c952ef173c3e8cde943b03"),
(1247854,"0123a85e844b9e3ce73885f35e91910e745a2aa47ab6ed4485112078d8c613562f01d88820f98dfdf0d9580789a768ad73fa995ef6e75793b8d60c7e7905c6fa75590d000001e693e38d719d94ca9859666e53338c952c4fdf13ea8180e6cb1c7072a3e5c22c000001511450bfae87f33f84aca5bf617216df29942a00dcdf7f41e97dc92471be21360000000001989234edea8bfa99c9c599eb577a8b90427c12ef50ee7fa0381d0997bb59df5201cb846820acd916b4ea03b0a222b3eae8704bbd5365f105156041c578bd214c3201e03719b3810c7a9eaf6680ad3c60fb5ffdb0106975c952ef173c3e8cde943b03"),
(1458603,"0172eb1ac0da334d37924a97ff14eb1723be0f7c8690f4935f887b07159ebc3361000d000186eb873a210f244936aed363c70567e2daa80c6085a7d2e7a1ac2dec497bf01d0001284bbecf2ff2db903ec6f8031672e769dc1936388058008d40e1082241f0ed480001511450bfae87f33f84aca5bf617216df29942a00dcdf7f41e97dc92471be21360000000001989234edea8bfa99c9c599eb577a8b90427c12ef50ee7fa0381d0997bb59df5201cb846820acd916b4ea03b0a222b3eae8704bbd5365f105156041c578bd214c3201e03719b3810c7a9eaf6680ad3c60fb5ffdb0106975c952ef173c3e8cde943b03"),
(1503537,"01d9f368713ce1e4046e6106ca1a056c6bc1739c5038b2cc887cb18063f3558200000d00011f4c0f0fb852125e4646075a0e220ff23b4e4b30aa48d18799ed3388ab774a620182174608029bd907b9151a6a50585decf0e044f07cacbde67c1ed50980a7bd720001b72a27351fcc17a5b1941795abc754b7091f61d7daea28e9a1cd22890a9b7b4201511450bfae87f33f84aca5bf617216df29942a00dcdf7f41e97dc92471be21360000000001989234edea8bfa99c9c599eb577a8b90427c12ef50ee7fa0381d0997bb59df5201cb846820acd916b4ea03b0a222b3eae8704bbd5365f105156041c578bd214c3201e03719b3810c7a9eaf6680ad3c60fb5ffdb0106975c952ef173c3e8cde943b03"),];
let main_network_checkpoints = [(2700000, "000000"),(2721600,"01c09aa4e61573225ea0f53d3e3a42d936b01bd3e356e306af4ca7a5151e3f10120008012b8e4658cb43820be7aa77711aca3a757cb145c0c02dcad6338717c8d8505f20000000013c87edc1e3128abdf8572d0e3ac660e79109cee4259a0bd9c3a00cea877e675e01b1853a4ee1c97d9e7f8ae27085273dfbabac9d68cd709c65404b5d989c016153016809046c4254c12dad316b4e23f52e1ce80a9a53e99261f179eb02f065368f150147145eab86095e8844966cc1d4ef54a23692ea5b19d19cd41cdf0c83006ee24e"),
(2764800,"01a015b6a4d834024a11d014fd97161231661fd21888b665e2fa827627fb753915000a000001ca98732ec24fd29cab1796f4e7c45272e744d996c417dae3aad4a032ebe33b44000179f083ecc08e4e465e955481c176ec7ef1d9e04f915e5ac18330e41a9207684f01f244112b35f6007ed6154406c251efa73c57dd4acf1c96a9a92990354edca86d019e594e0159774eae1727cfcf811a9dadb9c3b758af08bd47a3977c4f4476093b00000151fddddbe55ded65c7fb68bc127b0d2c254838e7ffab6c15bca6454b25faa84f"),
(2808000,"0178887510ab1577d380f386c9692ce2c3525fcd154436436adad198e86fe2f16901b69ced08f87e751bd0064a99c588950c909b4c8515d4ac549172ba6bca52c45d0a0001567b59cc703fc000bd51f9ae31da426a3a3e1d900a3826ff2fab285584504a4e000001de4771af6f869143c7d901f9d2b5b645a61e0d699fdf850ffb4d3eac6af4263d00010102501ab928d82f8f278d16f978fd0a840a1530b8faf9e04ea6b35d25f564210001e6f76c84e55f838f476bcd9d75f40595f4a5eb8999d83ebfe7a5b902729732710151fddddbe55ded65c7fb68bc127b0d2c254838e7ffab6c15bca6454b25faa84f"),
Expand All @@ -58,7 +62,16 @@ pub fn get_checkpoint(block_height: i32, is_testnet: bool) -> (i32, &'static str
(3628800,"0110c3ccd928f8f586116261291f3bf767d31c1df5291f65e6e3509262d99e692501b365a800a4e9f75fd4c79131bedf527051fb89a21ba61eeae3b8ca530c6b022a0c000000000159d094918e63fbcdb4c7d11cba60b2c36867b30883885a749451de95805224280000016615ff1f969328b36726f9bd6e3f6e3563be459ba76c97bf2087329093f66e36000001d280b7a861cf5346a0b0399071b4ba982d30b2d4d81efee9ee67aceed186ae4101cfba1bf888eb87c36b723c3121dfddf9317af542f93237a26cce3e8f4fbc291a"),
(3672000,"01c7a42bc402f14e49436d7e58ac5f184d3ec8ef5d225a8646acf5a0f069540d16000c00011bf227bab6473b8a7de45666b4ee4e78b5661672023d0792cc514287d184fd0700000000000001b6c92cbdfebc410e0487eaaef818e8a1235e8769ac59f14a0ae57819a43c310e0001d280b7a861cf5346a0b0399071b4ba982d30b2d4d81efee9ee67aceed186ae4101cfba1bf888eb87c36b723c3121dfddf9317af542f93237a26cce3e8f4fbc291a"),
(3715200,"013b846812e6e8b7a8b287b0155a3402841bb29654a9e779344fb354bed36bcc13000c01a1b1f9cb0c43f37309712064acf453bc25cff51aa5e99e9c6ef170e3f1df0369000153df0a7b369557d791bcd974b3cb498d67a4765a89bdebb434a4e12738cea125018b98c3a4de1f68d9e34d07bbc195744c77484d33a76ae5250beb501ac915773000019cf1f62c39072b19d417e6e4231f855a506fa3135e4d641a09af9401a062270301ba70328e92baf57c6d764ba8d9490ab2a36166bd5869d8f355b8cad94b5f920f0001b6c92cbdfebc410e0487eaaef818e8a1235e8769ac59f14a0ae57819a43c310e0001d280b7a861cf5346a0b0399071b4ba982d30b2d4d81efee9ee67aceed186ae4101cfba1bf888eb87c36b723c3121dfddf9317af542f93237a26cce3e8f4fbc291a"),
(3758400,"01dad3163bb15cb6c084ee6b58062165c87d74bad920034e1f664387b860d4356d013b2d420f6fbb1dcd12fb420c74b5aa290e289e766b40995b518914685eecac460c015120e4c2ae792da3621cbb9638e5790881394f711385cede7034c9e05776eb1c0001a5fa713bde9aeb845b01587cfa740f65e4cfce86bc7ea7d9069525b9c4aaf84501fb96b56858d068fff8331a03bca0882dcde1b6468cbbe7de05eb01049c7bff6900014cb3792d12d26638787feae275e3d1738d4094ab9e57d8ce2fabd6a5f5344f2201b5a4a8f9964e892201a22d902383145ae88f39dcd1170568142d6c03d416091801551a70b1c86f61bb5f2189550009c5d6c1cc7507c3d9b267f7a7276d614b416201b6c92cbdfebc410e0487eaaef818e8a1235e8769ac59f14a0ae57819a43c310e0001d280b7a861cf5346a0b0399071b4ba982d30b2d4d81efee9ee67aceed186ae4101cfba1bf888eb87c36b723c3121dfddf9317af542f93237a26cce3e8f4fbc291a")];
(3758400,"01dad3163bb15cb6c084ee6b58062165c87d74bad920034e1f664387b860d4356d013b2d420f6fbb1dcd12fb420c74b5aa290e289e766b40995b518914685eecac460c015120e4c2ae792da3621cbb9638e5790881394f711385cede7034c9e05776eb1c0001a5fa713bde9aeb845b01587cfa740f65e4cfce86bc7ea7d9069525b9c4aaf84501fb96b56858d068fff8331a03bca0882dcde1b6468cbbe7de05eb01049c7bff6900014cb3792d12d26638787feae275e3d1738d4094ab9e57d8ce2fabd6a5f5344f2201b5a4a8f9964e892201a22d902383145ae88f39dcd1170568142d6c03d416091801551a70b1c86f61bb5f2189550009c5d6c1cc7507c3d9b267f7a7276d614b416201b6c92cbdfebc410e0487eaaef818e8a1235e8769ac59f14a0ae57819a43c310e0001d280b7a861cf5346a0b0399071b4ba982d30b2d4d81efee9ee67aceed186ae4101cfba1bf888eb87c36b723c3121dfddf9317af542f93237a26cce3e8f4fbc291a"),
(3801621,"010d71b73b944013635522f74ff283f9da4728721d26bfa9d05de25045653dde4d01f181920ff42ea296cdcabd8e6ad6765174172c74fa10dc1a357a8d3668e917600c01b9e2c0c7b1413c8f281aeed7a475ed01200bf7bc0c0c8c8be07932dfb1faa9290190ad2aa785f4a0c7fa0c58e2bbbc4e90384fac37a99522273407ab4d369e974d01c699ea43735e66fe2864959adf4a844f778aa39174c57dcd1e1797d245f6e31900000001fb5b44ee19605ca2c1dc84264cf8ce0355c87c92806fe6dd4cabd0b76324b1240000014571a4fff7bb7b6744219a337197ed0a7a6337bd63212f0a89ecccfa512dca4301d280b7a861cf5346a0b0399071b4ba982d30b2d4d81efee9ee67aceed186ae4101cfba1bf888eb87c36b723c3121dfddf9317af542f93237a26cce3e8f4fbc291a"),
(3845321,"01dadc39e3b54511bdb688add5fa2acb4948066b558ed3cc1b586eae225f317734000c000000017c79f615dc7a1454e13b0cd956a1e13da07e7401662bdd63412b8a5ddc09a81900000159dc5207e88ec83106cb1129c6ebe58013417c56cc7a8a9b1eccb669cdf2392401cb2f9f2ba688b1b9b75c567f76a8f4f03dfd4bae8c24a0d78e27b5adc5fd585f00014571a4fff7bb7b6744219a337197ed0a7a6337bd63212f0a89ecccfa512dca4301d280b7a861cf5346a0b0399071b4ba982d30b2d4d81efee9ee67aceed186ae4101cfba1bf888eb87c36b723c3121dfddf9317af542f93237a26cce3e8f4fbc291a"),
(3888811,"016f32073bbb4e087c18993ad12cb75f29a482693df412c17ee664387955dd7253016a998beb872b85e85818a4ad8056b128e7052109e44f03380d1e277f92856a2a0c0001897eafcf789b78d2e8ed8a9d676cf115a4f339bc500db28cbc23389a99723e1800017ea144a864c47c1d97a97573a2c5cce8d41cee475521bb43cee1901b8bef2566000000000124979b696355c7cd5cd817919323d9b7df17c7711f233ae8b8bfdf00c7809b41014571a4fff7bb7b6744219a337197ed0a7a6337bd63212f0a89ecccfa512dca4301d280b7a861cf5346a0b0399071b4ba982d30b2d4d81efee9ee67aceed186ae4101cfba1bf888eb87c36b723c3121dfddf9317af542f93237a26cce3e8f4fbc291a"),
(3932463,"01fe01964b8f449df72e471655c3295c07481fc7e222c70253421550a3faaac05c000c01e0168263866554669fa753e5231e6ab805a4a6623d9c3d5973d05b87c52faf60000179b8d3e305e455f8d9b5a1eb5087fa326f4d7fc13b96d0fe048d4c5e73ed2b0101bb1f6278632f63008b2e97b82ef4ab12ff68b305f2d59633b7e5ccf76e82bd1001bcfad8b27de27ed0c0844aeca4350b752071ff96ee2f496bc2500c89a1c3f63801c244276a4dc711c9022eb4ddd3ab9b997b8941be74e8efb402d993d273646f6100000124979b696355c7cd5cd817919323d9b7df17c7711f233ae8b8bfdf00c7809b41014571a4fff7bb7b6744219a337197ed0a7a6337bd63212f0a89ecccfa512dca4301d280b7a861cf5346a0b0399071b4ba982d30b2d4d81efee9ee67aceed186ae4101cfba1bf888eb87c36b723c3121dfddf9317af542f93237a26cce3e8f4fbc291a"),
(3975905,"010d07e56dea59e6215b5bff648ccedb92056847eda0c9c18b211fbd43074d3326010082cf94623651d9d1003f1f10a0d420974dff3793c6f8711fcbd8018851156f0c0001a444e74268e3ed0fbf7e720064d8e701d7042ac9ebfeb8b6af8a6bfc52841c5b01e41a1383a5c60f3224291616dbe83fa7319f1dc71151d0d086eccceb93e20c5e017a54753ae6be072e0f25c9e621e5f4b40cea8a7336841dc6a3898ad66628b75000013f489167e529873317e6d4270ab8ad43bf29ee320c5c51307f40a62845fbb054015c27930e9c155ce94565eac98718d5294cbf645e2e3c4bc28cc23312edec2e44000124979b696355c7cd5cd817919323d9b7df17c7711f233ae8b8bfdf00c7809b41014571a4fff7bb7b6744219a337197ed0a7a6337bd63212f0a89ecccfa512dca4301d280b7a861cf5346a0b0399071b4ba982d30b2d4d81efee9ee67aceed186ae4101cfba1bf888eb87c36b723c3121dfddf9317af542f93237a26cce3e8f4fbc291a"),
(4019130,"012e2aad2202991b317e39ea973790d430172271f8a28ff88188eecdf960db9751013c6baebae76c774d45192f2b3e8ba60e1f77d5370806978fde5abd1977c244200c01753391b387261721f9a119863e9ce6ee5d271cdafaed15e8c722697748ebd44501db5434b44a1a50d6b0b57a912424a0660bb0c2261057382808adc0d99fbbfe4801d3f3b879b6f0554c9cf73a86a06a81631ee30d498fa7d4b088bd0b851d52396500000001e129dcdde695c51208a3a6693722492ac343847fb365b6c0a903d074e7430b3e019e5a77b41ba49a3dd6df92f9362d438866c4ad943212cbdd69a526c3af9daa010124979b696355c7cd5cd817919323d9b7df17c7711f233ae8b8bfdf00c7809b41014571a4fff7bb7b6744219a337197ed0a7a6337bd63212f0a89ecccfa512dca4301d280b7a861cf5346a0b0399071b4ba982d30b2d4d81efee9ee67aceed186ae4101cfba1bf888eb87c36b723c3121dfddf9317af542f93237a26cce3e8f4fbc291a"),
(4063125,"0180bde6547e4e09b90ecf403993968c9f40266e1e8f7d9c5fb64b2fde3ffc530f0130f337d34757dd14f28ddcc1d267db33e0c436ada04239c9f3c4238efa8fc8430d01f55d7fe28342b168f840c60d644f464d2b0385cecc1bd4a221cf9ebc1e0ea6110001dcba4caeed7ff9690f06a1344f5aaf4c0b3eb87d541ece5be492a9b3c6926b3a0000013da9d212c942891b15067bc440ebed6d7f66b1f24e811b089ef397b88487a15e000000000000013b770ced01413bbf8dcc2b6c74c61aa319826699a45e6de666f32ca8677a8f19"),
(4106616,"01ad22f6058f08a44097e2b32be535d71f0a4c9e661c2083742c6075d97551e138000d019661ff0a7256d07f4a0d4fa951074f97decaebcf352686ca914daadd165b3c4a018dd29b683acd12192f4b5e64216bc07a5d5ff6ef8468c9e65e9852116d0f050400010b01d41af2de6a9b561d98e5199208ee3176df0e8466f8c1d587a04dd52b4a6e01a8b4d959765449fb3bfc0387002bff7d911715aa3c894f38813dfde1749eda310156652f23b4e5325ee03b28082797c81336bc0a89248e9ae438cdac2b4cefd42d01967e964358f0754ca73ce829d787c8fe673cb25dcbd483f5e2f8d07db5e303420000000000013b770ced01413bbf8dcc2b6c74c61aa319826699a45e6de666f32ca8677a8f19"),
(4150194,"01bee5f810da2cdcd11c7eb71af5db99bcc80f09bf5b7b919149c4ff5f074ddb25000d0121d9765825a3be37c9e5de9670c01dd6ca2d7f871b5bbeafff14ebfe92dadb3f0001e717655042746d5d2ce1513c08c838169c6da80fb7cd7c46c2acdccd420dc4220001a26282523e088ba1cca8d1032bdd64afec6d971ea28181002a235f786ae1a506000194157b19b5e658d8bdc76a76014daf514e56ec0011dfeba462ba41f72d4ded5100012fb8c3e27cdc03c8e457213eb347c29bfb3413f79986356f230838835078be73000000013b770ced01413bbf8dcc2b6c74c61aa319826699a45e6de666f32ca8677a8f19")];
let used_checkpoints = if is_testnet {
test_network_checkpoints.as_slice()
} else {
Expand All @@ -84,7 +97,7 @@ mod test {
#[test]
fn check_testnet_checkpoints() -> Result<(), Box<dyn Error>> {
// Blocks above last checkpoint should yield last checkpoint
assert_eq!(get_checkpoint(1123200 * 5, true).0, 1123200);
assert_eq!(get_checkpoint(1123200 + 30000, true).0, 1123200);
// Blocks equal to last checkpoint should yield last checkpoint
assert_eq!(get_checkpoint(1123200, true).0, 1123200);
// Blocks in between two adjacent checkpoints should yield the smaller of the two
Expand Down