transfer100.xmonk#72,368,666brc-20#71,562,237texttransfer300.pizza#71,410,128brc-20transfer500,000.merm#70,878,377brc-20transfer5,000,000.merm#70,296,477brc-20transfer200,000.cats#70,285,312brc-20transfer100,000.cats#69,499,638brc-20transfer250,000.cats#69,481,020brc-20transfer500,000.pmbs#68,421,673brc-20transfer30,000,000.atmt#68,325,489brc-20transfer500,000.cats#68,269,159brc-20minting-claim#66,035,863orc-20transfer1,050,000.cats#65,694,870brc-20reg108084.uniworlds#64,848,410snstransfer10,000.0522#60,612,524brc-20transfer200,000.cats#59,356,580brc-20transfer1,000,000.rats#54,273,532brc-20transfer1,000,000.rats#54,273,526brc-20transfer7,000,000.rats#54,200,481brc-20transfer300,000.cats#53,414,005brc-20mint.charactor:cultivator#51,558,709brc-1024mint.charactor:thunder#51,551,875brc-1024mint.charactor:soulbinder#51,548,243brc-1024mint.charactor:techie#51,548,242brc-1024transfer100,000.cats#51,497,879brc-20transfer1,000,000.rats#48,483,375brc-20transfer12,000.mice#48,063,037brc-20transfer200,000.cats#47,518,051brc-20 <div id="searchresults-header" class="searchresults-header"></div> <ul id="searchresults"> </ul> </div> </div> {{/if}} <!-- Apply ARIA attributes after the sidebar and the sidebar toggle button are added to the DOM --> <script> document.getElementById('sidebar-toggle').setAttribute('aria-expanded', sidebar === 'visible'); document.getElementById('sidebar').setAttribute('aria-hidden', sidebar !== 'visible'); Array.from(document.querySelectorAll('#sidebar a')).forEach(function(link) { link.setAttribute('tabIndex', sidebar === 'visible' ? 0 : -1); }); </script> <div id="content" class="content"> <main> {{{ content }}} </main> <nav class="nav-wrapper" aria-label="Page navigation"> #45,054,471text assert_eq!( Runestone::decipher(&Transaction { input: Vec::new(), output: vec![TxOut { script_pubkey: script::Builder::new() .push_opcode(opcodes::all::OP_RETURN) .push_slice(b"RUNE_TEST") .push_slice::<&PushBytes>(varint::encode(2).as_slice().try_into().unwrap()) .push_slice::<&PushBytes>(varint::encode(4).as_slice().try_into().unwrap()) .push_slice::<&PushBytes>(varint::encode(1).as_slice().try_into().unwrap()) .push_slice::<&PushBytes>(varint::encode(5).as_slice().try_into().unwrap()) .push_slice::<&PushBytes>(varint::encode(0).as_slice().try_into().unwrap()) .push_slice::<&PushBytes>(varint::encode(1).as_slice().try_into().unwrap()) .push_slice::<&PushBytes>(varint::encode(2).as_slice().try_into().unwrap()) .push_slice::<&PushBytes>(varint::encode(3).as_slice().try_into().unwrap()) .into_script(), value: 0 }], lock_time: locktime::absolute::LockTime::ZERO, #45,023,075textmsgstr "寄付" #: src/SUMMARY.md:11 msgid "Guides" msgstr "ガイド" #: src/SUMMARY.md:12 msgid "Explorer" msgstr "ブラウザ" #: src/SUMMARY.md:14 src/guides/sat-hunting.md:1 msgid "Sat Hunting" msgstr "聡狩り" #: src/SUMMARY.md:15 src/guides/collecting.md:1 msgid "Collecting" msgstr "コレクション" #: src/SUMMARY.md:16 src/guides/sat-hunting.md:239 msgid "Sparrow Wallet" msgstr "雀のウォレット" #: src/SUMMARY.md:17 src/guides/testing.md:1 msgid "Testing" msgstr "テスティング" #: src/SUMMARY.md:18 src/guides/moderation.md:1 msgid "Moderation" msgstr "調節" #: src/SUMMARY.md:19 src/guides/reindexing.md:1 msgid "Reindexing" msgstr "再インデックス" #: src/SUMMARY.md:20 msgid "Bounties" msgstr "賞金" #: src/SUMMARY.md:21 msgid "Bounty 0: 100,000 sats Claimed!" msgstr "ミッション 0: 100,000 sats 完成!" #: src/SUMMARY.md:22 msgid "Bounty 1: 200,000 sats Claimed!" msgstr "ミッション 1: 200,000 sats 完成!" #: src/SUMMARY.md:23 msgid "Bounty 2: 300,000 sats Claimed!" msgstr "ミッション 2: 300,000 sats 完成!" #: src/SUMMARY.md:24 msgid "Bounty 3: 400,000 sats" msgstr "ミッション 3: 400,000 sats" #45,022,966text rune: Rune(RUNE), ..Default::default() }), ..Default::default() } .encipher(), ), ..Default::default() }); context.mine_blocks(1); let id = RuneId { height: 2, index: 1, }; context.assert_runes( [( id, RuneEntry { etching: txid, rune: Rune(RUNE), supply: u128::max_value(), timestamp: 2, ..Default::default() }, )], [(OutPoint { txid, vout: 0 }, vec![(id, u128::max_value())])], ); } } #[test] fn etching_with_non_zero_divisibility_and_rune() { let context = Context::builder() .arg("--index-runes-pre-alpha-i-agree-to-get-rekt") .build(); context.mine_blocks(1); let txid = context.rpc_server.broadcast_tx(TransactionTemplate { inputs: &[(1, 0, 0, Witness::new())], op_return: Some( Runestone { edicts: vec![Edict {#45,000,630textuse super::*; #[derive(Debug, PartialEq, Copy, Clone, Eq, PartialOrd, Ord, Default)] pub struct SatPoint { pub outpoint: OutPoint, pub offset: u64, } impl Display for SatPoint { fn fmt(&self, f: &mut Formatter) -> fmt::Result { write!(f, "{}:{}", self.outpoint, self.offset) } } impl Encodable for SatPoint { fn consensus_encode<S: io::Write + ?Sized>(&self, s: &mut S) -> Result<usize, io::Error> { let len = self.outpoint.consensus_encode(s)?; Ok(len + self.offset.consensus_encode(s)?) } } impl Decodable for SatPoint { fn consensus_decode<D: io::Read + ?Sized>( d: &mut D, ) -> Result<Self, bitcoin::consensus::encode::Error> { Ok(SatPoint { outpoint: Decodable::consensus_decode(d)?, offset: Decodable::consensus_decode(d)?, }) } } impl Serialize for SatPoint { fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error> where S: Serializer, { serializer.collect_str(self) } } impl<'de> Deserialize<'de> for SatPoint { fn deserialize<D>(deserializer: D) -> Result<Self, D::Error> #44,996,662text"╰─────── Second cycle\n" "```" msgstr "" "```\n" "1°1′0″0‴\n" "│ │ │ ╰─ ブロック最初の聡\n" "│ │ ╰─── 難易度調整周期の最初の聡ではない\n" "│ ╰───── 半減周期の最初の聡ではない\n" "╰─────── 二番目の循環周期\n" "```" #: src/overview.md:131 msgid "This satoshi is epic:" msgstr "史詩レベルの聡です" #: src/overview.md:133 msgid "" "```\n" "1°0′1″0‴\n" "│ │ │ ╰─ First sat in block\n" "│ │ ╰─── Not first block in difficulty adjustment period\n" "│ ╰───── First block in halving epoch\n" "╰─────── Second cycle\n" "```" msgstr "" "```\n" "1°0′1″0‴\n" "│ │ │ ╰─ ブロック最初の聡\n" "│ │ ╰─── 難易度調整周期の最初の聡ではない\n" "│ ╰───── 半減周期の最初の聡ではない\n" "╰─────── 二番目の循環周期\n" "```" #: src/overview.md:141 msgid "This satoshi is legendary:" msgstr "伝奇レベルの聡です。" #: src/overview.md:143 msgid "" "```\n" "1°0′0″0‴\n" "│ │ │ ╰─ First sat in block\n" "│ │ ╰─── First block in difficulty adjustment period\n" "│ ╰───── First block in halving epoch\n" "╰─────── Second cycle\n" "```" msgstr "" "```\n" "1°0′0″0‴\n" "│ │ │ ╰─ ブロック最初の聡\n" "│ │ ╰─── 難易度調整周期の最初の聡ではない\n" "│ ╰───── 半減周期の最初の聡ではない\n" "╰─────── 二番目の循環周期\n" #44,995,978texttransfer10,000,000.rats#41,627,946brc-20transfer10,000,000.rats#41,618,602brc-20transfer350,000.cats#40,828,845brc-20transfer50,000,000.rats#40,642,875brc-20transfer1,000.bear#40,302,075brc-20transfer50,000,000.rats#40,299,502brc-20transfer10,000.moon#39,128,659brc-20transfer100,000.cats#38,895,665brc-20transfer1,000.lbow#38,230,125brc-20mint100,000,000.sats#35,236,200brc-20mint100,000,000.sats#35,236,199brc-20mint100,000,000.sats#35,236,198brc-20mint100,000,000.sats#35,236,197brc-20mint100,000,000.sats#35,236,196brc-20mint100,000,000.sats#35,236,195brc-20mint100,000,000.sats#35,236,194brc-20mint100,000,000.sats#35,236,193brc-20mint100,000,000.sats#35,234,864brc-20mint100,000,000.sats#35,234,863brc-20mint100,000,000.sats#35,231,736brc-20mint100,000,000.sats#35,231,735brc-20mint100,000,000.sats#35,231,734brc-20mint100,000,000.sats#35,230,896brc-20mint100,000,000.sats#35,230,895brc-20mint100,000,000.sats#35,230,894brc-20mint100,000,000.sats#35,230,893brc-20