#73,962,419text#73,962,418text#73,962,417text#73,962,416text#73,962,415text#73,962,414text#73,962,413text#73,962,412text#73,962,411text#73,962,410textInscription #73417168#73,417,168htmltransfer100.pizza#72,343,733brc-20transfer100.pizza#71,204,563brc-20GOB#66,896,576textInscription #65541240#65,541,240htmlregTSMC.uniworlds#65,042,754snsregFlyingfish.uniworlds#64,994,148snsInscription #63814482#63,814,482htmlInscription #60821889#60,821,889htmlmint10,000.pearl#59,658,337ordxInscription #56745722#56,745,722htmlInscription #56742299#56,742,299htmlInscription #56727634#56,727,634htmltransfer5,000.mice#55,872,631brc-20mint1,000,000.ligo#54,609,961brc-20mint1,000,000.ligo#54,609,959brc-20mint1,000,000.ligo#54,609,954brc-20mint1,000,000.ligo#54,609,937brc-20mint1,000,000.ligo#54,609,936brc-20mint1,000,000.ligo#54,609,932brc-20mint1,000,000.ligo#54,609,930brc-20mint1,000,000.ligo#54,609,921brc-20mint1,000,000.ligo#54,609,912brc-20mint1,000,000.ligo#54,609,903brc-20mint1,000,000.ligo#54,609,902brc-20mint1,000,000.ligo#54,609,897brc-20mint1,000,000.ligo#54,609,892brc-20mint1,000,000.ligo#54,609,889brc-20mint1,000,000.ligo#54,609,880brc-20Inscription #51529348#51,529,348htmlInscription #51527908#51,527,908htmlInscription #51401725#51,401,725htmltransfer500.dovi#47,371,017brc-20transfer20,522.turt#47,180,352brc-20mint1,000.mice#45,341,898brc-20mint1,000.mice#45,341,893brc-20mint1,000.mice#45,341,890brc-20mint1,000.mice#45,341,882brc-20mint1,000.mice#45,341,872brc-20 .parse() .unwrap(), ), ); case( "BCRT1QS758URSH4Q9Z627KT3PP5YYSM78DDNY6TXAQGW", Object::Address( "BCRT1QS758URSH4Q9Z627KT3PP5YYSM78DDNY6TXAQGW" .parse() .unwrap(), ), ); case( "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef:123", Object::OutPoint( "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef:123" .parse() .unwrap(), ), ); case( "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF:123", Object::OutPoint( "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF:123" .parse() .unwrap(), ), ); case( "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef:123:456", Object::SatPoint( "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef:123:456" .parse() .unwrap(), ), ); case( "0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF:123:456", #44,988,855text x = x * 26 + c as u64 - 'a' as u64 + 1; if x > Self::SUPPLY { bail!("sat name out of range"); } } _ => bail!("invalid character in sat name: {c}"), } } Ok(Sat(Self::SUPPLY - x)) } fn from_degree(degree: &str) -> Result<Self> { let (cycle_number, rest) = degree .split_once('°') .ok_or_else(|| anyhow!("missing degree symbol"))?; let cycle_number = cycle_number.parse::<u32>()?; let (epoch_offset, rest) = rest .split_once('′') .ok_or_else(|| anyhow!("missing minute symbol"))?; let epoch_offset = epoch_offset.parse::<u32>()?; if epoch_offset >= SUBSIDY_HALVING_INTERVAL { bail!("invalid epoch offset"); } let (period_offset, rest) = rest .split_once('″') .ok_or_else(|| anyhow!("missing second symbol"))?; let period_offset = period_offset.parse::<u32>()?; if period_offset >= DIFFCHANGE_INTERVAL { bail!("invalid period offset"); } let cycle_start_epoch = cycle_number * CYCLE_EPOCHS; #44,988,852textuse 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,988,833text"subcommand." msgstr "" "注意してください。 『--config'オプションは'ord'の後で'server'サブコマンドの前" "にあります。" #: src/guides/moderation.md:35 msgid "`ord` must be restarted in to load changes to the config file." msgstr "" "'ord'は、設定ファイルの変更をロードするために再起動する必要があります。" #: src/guides/moderation.md:37 msgid "`ordinals.com`" msgstr "" #: src/guides/moderation.md:40 msgid "" "The `ordinals.com` instances use `systemd` to run the `ord server` service, " "which is called `ord`, with a config file located at `/var/lib/ord/ord.yaml`." msgstr "" "ordinals.com'インスタンスは'systemd'を使用して'ord'という名前の'ord " "server'サービスを実行しています。設定ファイルは『/var/lib/ord/ord.yaml'." #: src/guides/moderation.md:43 msgid "To hide an inscription on `ordinals.com`:" msgstr " ordinals.com 上で銘文を隠れます:" #: src/guides/moderation.md:45 msgid "SSH into the server" msgstr "SSHでサーバを登録します。" #: src/guides/moderation.md:46 msgid "Add the inscription ID to `/var/lib/ord/ord.yaml`" msgstr " `/var/lib/ord/ord.yaml`中で銘文を増やしますID" #: src/guides/moderation.md:47 msgid "Restart the service with `systemctl restart ord`" #44,987,167text #: src/guides/reindexing.md:11 msgid "" "The database `ord` uses is called [redb](https://github.com/cberner/redb), " "so we give the index the default file name `index.redb`. By default we store " "this file in different locations depending on your operating system." msgstr "" "`ord`は 使っているデータベースは [redb](https://github.com/cberner/redb)を呼" "ばれています,索引のために‘index.redb’を指定された黙認ファイル名として、黙認" "する場合は保存します操作システムによって、このファイルは異なる位置にあります" #: src/guides/reindexing.md:15 msgid "Platform" msgstr "プラットフォーム" #: src/guides/reindexing.md:15 msgid "Value" msgstr "" #: src/guides/reindexing.md:17 msgid "Linux" msgstr "" #: src/guides/reindexing.md:17 msgid "`$XDG_DATA_HOME`/ord or `$HOME`/.local/share/ord" msgstr "" #: src/guides/reindexing.md:17 msgid "/home/alice/.local/share/ord" msgstr "" #: src/guides/reindexing.md:18 msgid "macOS" msgstr "" #: src/guides/reindexing.md:18 msgid "`$HOME`/Library/Application Support/ord" msgstr "" #: src/guides/reindexing.md:18 msgid "/Users/Alice/Library/Application Support/ord" msgstr "" #44,987,166textmsgstr "Ordinals賞金計画の提示" #: src/bounties.md:4 msgid "" "The `ord` wallet can send and receive specific satoshis. Additionally, " "ordinal theory is extremely simple. A clever hacker should be able to write " "code from scratch to manipulate satoshis using ordinal theory in no time." msgstr "" "`ord` ウォレットは特定の聡を発送して、受け取れます。その他、序数理論は非常に" "簡単で、賢いハッカが速く最初から始めることができるはずですコードを書いて、序" "数理論を使って聡を操作します。" #: src/bounties.md:8 msgid "" "For more information about ordinal theory, check out the [FAQ](./faq.md) for " "an overview, the [BIP](https://github.com/ordinals/ord/blob/master/bip." "mediawiki) for the technical details, and the [ord repo](https://github.com/" "ordinals/ord) for the `ord` wallet and block explorer." msgstr "" "序数理論のより多くの情報に関して,[FAQ](./faq.md) を閲見して概要を獲得しま" "す。[BIP](https://github.com/ordinals/ord/blob/master/bip.mediawiki) を閲見し" "て、技術の詳細を獲得します[ord repo](https://github.com/ordinals/ord)を閲見し" "て、`ord`ウォレットとブラウザの情報を獲得します." #: src/bounties.md:14 msgid "" "Satoshi was the original developer of ordinal theory. However, he knew that " #44,987,165text"winner." msgstr "" "一つの最も古い聡を含まれるUTXOを提出されます。例えば、すべて提出されたUTXOの" "中に最も小さい数字は優勝者とします" #: src/bounty/1.md:10 msgid "" "The bounty is open for submissions until block 753984—the first block of " "difficulty adjustment period 374. Submissions included in block 753984 or " "later will not be considered." msgstr "" "賞金はブロック高度753984 の前に有効であり、ブロック高度753984は初めての難易度" "の調整期374の後の初めてのブロックです。これらを含まれてまたはブロック高度" "753984より遅いのは考えされません。" #: src/bounty/1.md:17 msgid "200,000 sats" msgstr "" #: src/bounty/1.md:22 msgid "" "[`145Z7PFHyVrwiMWwEcUmDgFbmUbQSU9aap`](https://mempool.space/" "address/145Z7PFHyVrwiMWwEcUmDgFbmUbQSU9aap)" msgstr "" #: src/bounty/1.md:27 msgid "" "Claimed by [@ordinalsindex](https://twitter.com/rodarmor/" "status/1569883266508853251)!" msgstr "" " [@ordinalsindex](https://twitter.com/rodarmor/status/1569883266508853251)は" "獲得!" #: src/bounty/2.md:1 msgid "Ordinal Bounty 2" msgstr "賞金任務 2" #: src/bounty/2.md:7 msgid "Send an " msgstr "一つ発送します" #: src/bounty/2.md:7 msgid "uncommon" msgstr "普通ではないの" #: src/bounty/2.md:7 #44,987,163text Extension(page_config), Extension(index), Path(0), accept_json, ) .await } async fn inscriptions_paginated( Extension(page_config): Extension<Arc<PageConfig>>, Extension(index): Extension<Arc<Index>>, Path(page_index): Path<usize>, accept_json: AcceptJson, ) -> ServerResult<Response> { let (inscriptions, more_inscriptions) = index.get_inscriptions_paginated(100, page_index)?; let prev = page_index.checked_sub(1); let next = more_inscriptions.then_some(page_index + 1); Ok(if accept_json.0 { Json(InscriptionsJson { inscriptions, page_index, more: more_inscriptions, }) .into_response() } else { InscriptionsHtml { inscriptions, next, prev, } .page(page_config) .into_response() }) } async fn inscriptions_in_block( Extension(page_config): Extension<Arc<PageConfig>>, Extension(index): Extension<Arc<Index>>, Path(block_height): Path<u32>, #44,985,600text <a href=/clock title=clock><img class=icon src=/static/clock.svg></a> %% if self.config.index_sats { <a href=/rare.txt title=rare><img class=icon src=/static/gem.svg></a> %% } <a href=https://docs.ordinals.com/ title=handbook><img class=icon src=/static/book.svg></a> <a href=https://github.com/ordinals/ord title=github><img class=icon src=/static/github.svg></a> <a href=https://discord.com/invite/ordinals title=discord><img class=icon src=/static/discord.svg></a> <form action=/search method=get> <input type=text autocapitalize=off autocomplete=off autocorrect=off name=query spellcheck=false> <input class=icon type=image src=/static/magnifying-glass.svg alt=Search> </form> </nav> </header> <main> $$ Trusted(&self.content) </main> </body> </html> #44,983,520text etching: txid, rune: Rune(RUNE), supply: 1000 + ((u128::max_value() - 1000) / 4) * 4, timestamp: 2, ..Default::default() }, )], [ ( OutPoint { txid, vout: 0 }, vec![(id, 1000 + (u128::max_value() - 1000) / 4)], ), ( OutPoint { txid, vout: 1 }, vec![(id, (u128::max_value() - 1000) / 4)], ), ( OutPoint { txid, vout: 2 }, vec![(id, (u128::max_value() - 1000) / 4)], ), ( OutPoint { txid, vout: 3 }, vec![(id, (u128::max_value() - 1000) / 4)], ), ], ); } #[test] fn split_in_etching_with_following_edict() { 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())], outputs: 4, op_return: Some( #44,981,092textOP_IF … OP_PUSH 3 OP_PUSH 0x1f1e1d1c1b1a191817161514131211100f0e0d0c0b0a090807060504030201000001 … OP_ENDIF ``` ### Notes The tag `3` is used because it is the first available odd tag. Unrecognized odd tags do not make an inscription unbound, so child inscriptions would be recognized and tracked by old versions of `ord`. A collection can be closed by burning the collection's parent inscription, which guarantees that no more items in the collection can be issued. #44,976,651text