<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>CryptoHeng</title>
        <link>https://paragraph.com/@cryptoheng</link>
        <description>Focus on block 30 years do not make money！

</description>
        <lastBuildDate>Wed, 12 Aug 2026 01:46:02 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <image>
            <title>CryptoHeng</title>
            <url>https://storage.googleapis.com/papyrus_images/22577746bee1e39febe2e1eddf6f45468fce96b7740a95ab287994cc6459d227.jpg</url>
            <link>https://paragraph.com/@cryptoheng</link>
        </image>
        <copyright>All rights reserved</copyright>
        <item>
            <title><![CDATA[Standx 撸毛交互教程]]></title>
            <link>https://paragraph.com/@cryptoheng/standx</link>
            <guid>zlHnij9XOpPA2jz3IjcE</guid>
            <pubDate>Thu, 23 Oct 2025 02:35:20 GMT</pubDate>
            <description><![CDATA[话不多说先上链接： https://standx.com/referral?code=lezizier 1、先把 USDT 存成 DUSD 建议 50U+2、存流动性3、再拿一些 DUSD 存成tDUSD，然后玩模拟盘，据说收益跟空投相关 首先需要注意的是注意这里是模拟盘交易，也就是你存的本金不会有损失，tDUSD 损失了也不影响你的真钱，建议至少每天交易 1 次，连续至少 2 周]]></description>
            <content:encoded><![CDATA[<p>话不多说先上链接：</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://standx.com/referral?code=lezizier">https://standx.com/referral?code=lezizier</a></p><p>1、先把 USDT 存成 DUSD 建议 50U+</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/2ad9a23a49efef43d4e7f652487a029c6cd7711493979a904824f0f419aab0ef.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>2、存流动性</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/6a46eceb032742983874874f05febf276edb34beb5ce55bd92ff1fd1142543bf.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/600c0f1611d3ccb5883aba12288d6b21cb388af367de8cc388e5d252516ab84c.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>3、再拿一些 DUSD 存成tDUSD，然后玩模拟盘，据说收益跟空投相关</p><p>首先需要注意的是</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/5406d0cb6026d8caf1554ba0d0fa63b178e29f3b474e881129991ffe8035baf5.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/1dcb325192064ee5a1150ce9069b65c79b57af2a235b3f1074ee2e1f80d468bb.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/a6323966638aa7714fd454bc4f9883b426b15b3a0df17d858eb0e56ba78ba6c8.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/dff4e84c891acdb2bed14bea0f199014706f15c176288da1f277d605bccb9fba.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>注意这里是模拟盘交易，也就是你存的本金不会有损失，tDUSD 损失了也不影响你的真钱，建议至少每天交易 1 次，连续至少 2 周</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/bf8e50d6f44e0e15f1212350093e53276d96482b1c910b364edf4661491163a3.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/5b130e34af922824f9fc26197fc37cf7abb8a0c5ee7e8c040d058ae45b309530.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure>]]></content:encoded>
            <author>cryptoheng@newsletter.paragraph.com (CryptoHeng)</author>
        </item>
        <item>
            <title><![CDATA[Magic Newton 教程]]></title>
            <link>https://paragraph.com/@cryptoheng/magic-newton</link>
            <guid>eny63lO3Ckrmva3kYerb</guid>
            <pubDate>Fri, 09 May 2025 01:45:23 GMT</pubDate>
            <description><![CDATA[一 、简单介绍：·Web3 新手福音：Magic Newton 让你轻松玩转加密世界 曾经，Web3 像是一座只有极客才能攀登的高峰，复杂的操作和晦涩的术语让普通人望而生畏。但现在，有了 Magic Newton，这一切变得像点外卖一样简单——你只需要告诉它你想要什么，剩下的交给智能助手就行。·Magic Newton 到底有多“魔法”？想象一下：你想每周存点 USDC，或者在不同区块链之间无缝转账，但不想花时间研究钱包、Gas 费和跨链桥。Magic Newton 就像你的私人 Web3 管家：设定好目标，AI 代理会自动帮你搞定一切，还能用加密技术证明它没“偷懒”或乱来。简单、安全、透明——这不就是我们想要的未来吗？ Magic Newton 是 Magic Labs 的最新力作。这家从 2018 年就开始深耕 Web3 的公司，早已凭借“免助记词钱包”赢得了超过 5000 万用户的信任。如今，他们带着更宏大的目标归来：让 Web3 不再是少数人的游戏，而是每个人都能轻松上手的工具。·它是怎么做到的？Magic Newton 的核心是一个叫 Newton Protocol 的...]]></description>
            <content:encoded><![CDATA[<h2 id="h-" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0"><strong>一 、简单介绍：</strong></h2><p><strong>·Web3 新手福音：Magic Newton 让你轻松玩转加密世界</strong></p><p>曾经，Web3 像是一座只有极客才能攀登的高峰，复杂的操作和晦涩的术语让普通人望而生畏。但现在，有了 <strong>Magic Newton</strong>，这一切变得像点外卖一样简单——你只需要告诉它你想要什么，剩下的交给智能助手就行。</p><h3 id="h-magic-newton" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">·Magic Newton 到底有多“魔法”？</h3><p>想象一下：你想每周存点 USDC，或者在不同区块链之间无缝转账，但不想花时间研究钱包、Gas 费和跨链桥。Magic Newton 就像你的私人 Web3 管家：设定好目标，AI 代理会自动帮你搞定一切，还能用加密技术证明它没“偷懒”或乱来。简单、安全、透明——这不就是我们想要的未来吗？</p><p>Magic Newton 是 <strong>Magic Labs</strong> 的最新力作。这家从 2018 年就开始深耕 Web3 的公司，早已凭借“免助记词钱包”赢得了超过 5000 万用户的信任。如今，他们带着更宏大的目标归来：让 Web3 不再是少数人的游戏，而是每个人都能轻松上手的工具。</p><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">·它是怎么做到的？</h3><p>Magic Newton 的核心是一个叫 <strong>Newton Protocol</strong> 的系统，融合了 AI 自动化和一些高大上的技术（比如零知识证明和可信执行环境）。听起来复杂？其实你只需要知道，它能让你的指令被智能、安全地执行，而且整个过程完全在你的掌控之中。</p><p>比如，你说“我想投资点加密资产，但别太麻烦”，Magic Newton 就会根据你的设定，自动完成定投、交易，甚至跨链操作。你只需要偶尔看看进度，剩下的时间？去喝杯咖啡吧！</p><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">·为什么值得关注？</h3><p>Magic Labs 不是初出茅庐的小团队。他们背后有 <strong>PayPal Ventures、Polygon</strong> 等大牌投资方的支持，融资总额高达 9000 万美元，堪称“财大气粗”。更重要的是，他们懂得用户的心——Web3 不该是烧脑的智力游戏，而应该是便捷的生活工具。</p><p>为了让更多人加入这场变革，Magic Newton 还计划通过任务和社区活动，发放占总供应量 0.75% 的 <strong>$NEWT</strong> 代币。换句话说，不仅用着省心，还有机会薅点羊毛，何乐而不为？</p><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">·写在最后</h3><p>Web3 的世界正在变得越来越友好，而 Magic Newton 就像是为新手和“懒人”量身打造的入场券。它不只是一款工具，更是一种全新的体验——让复杂的加密操作，变得像聊天一样自然。你，准备好试试这份“魔法”了吗？</p><h2 id="h-" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0"><strong>二、撸毛教程开始</strong></h2><p>1、打开网站首页：并使用任意一种你习惯的方案登录，我选择了 google 登录</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://magicnewton.com/portal?referral=ov1j4smcfc64nu7x">https://magicnewton.com/portal?referral=ov1j4smcfc64nu7x</a></p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/745d6e11459e33dcc0e67acd1fbe7ef8be1ae1078e2a8d02b9e1cb73e379509c.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>2、点击 按钮 去完成代理任务</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/1c2c13047e8f0d621c66df23947f4382c8b57da2a34cbf63473d6f3f53294032.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>点击进入新网页后输入邮箱并获取验证码，然后点击：Start Agent 按钮</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/902ed7c6129ba1834e3f59d424f697201615efe00632e66c72566f347eba26a2.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/cf081ee8876cce9fa84be4ab6940cadd1a8db7edb64be60c534345cab6a24c5b.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>点击Continue 后有没有余额无所谓，会弹出以下充值按钮，貌似不充值也算分数，我这里存入 10USDC 试试水，当然你也可以不存，酌情研究即可！</p><p>如果钱包里有 Base 链的 USDC 可以直接这里连接钱包充值</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/4032c31f76b71da6699ee326a15b481afb6b6846707012966464748bcf184adb.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/f0f0ec2f57cd3f48d1cb510fde3a1000428aad38c93c2a40135bf92cdf75a99e.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/b37e83770227febb3b7c39d96e969720310762f85f6e9faa18406aba76e1d261.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/8a5cda70065cc0171e0d7d89e90b2dfd0fabf791de381d4d050a7b4f6275e63b.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/497f80a74d087f67878c259ac9a58566b18d630cbd88f7ad26f7612e87a63c80.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0"></h3><p>这样就代表完成第一个代理任务了</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/dc5eb34775a53fdcf932e2daafc12acc6cffebff97df5f8de3ba75cc98f259b7.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>3、完成其他支线任务</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/a8f58af94a15a3090f8946e98820ecf5353b72de822bc2a9eacc26e9c833cfc4.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>最后一个任务需要加入工会</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://guild.xyz/magic-newton">https://guild.xyz/magic-newton</a></p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/24728da1afe2cffe02b8fe085d5f7d25652b01a96445f3b03eac84084378bfa2.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>这里如果你愿意可以话 1-2Umint 下这个工会徽章，说不准后面有用</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/dd65f901268d316d3f9fe4260d9f93ac3351d3ba6b0ca9f424a101e45cdbe797.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>4、投骰子游戏玩一玩</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/fcc043636e0e54bc8772ff2fe24dc0d3a721992bbd3d07c3e059aae003023df5.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>5、扫雷游戏玩一玩</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/209fd42621fdd1bb7c7778ec9bee9d4811af3be5fc45029ced3d95dd64caadb3.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>右击边边角角的地雷标注下</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/0600567154a5aa6c56c2cf1475fc13aebc8a9a7f964b58e0237c53fde66efba9.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/100ac26b601d16b51ca583f93af6b675c9038710871b986ca5473508ee19b8dc.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>每天来看任务，玩一玩游戏积攒分数吧！</p>]]></content:encoded>
            <author>cryptoheng@newsletter.paragraph.com (CryptoHeng)</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/4390aca70f556b0fa5cb9320f4931c81327771f21cd48199f5c8c26a0b9929a8.png" length="0" type="image/png"/>
        </item>
        <item>
            <title><![CDATA[撸毛SUI之Momentum]]></title>
            <link>https://paragraph.com/@cryptoheng/sui-momentum</link>
            <guid>yfrxvQquE9A2hNINC0ot</guid>
            <pubDate>Mon, 14 Apr 2025 15:18:45 GMT</pubDate>
            <description><![CDATA[🪂空投活动教程： 核心点：增加交易量及添加流动性，有意识的增添单笔跨额。 1⃣参与链接，推荐连接okx钱包 https://app.mmt.finance/leaderboard?refer=IAZB9P 2⃣ 跨链USDC建议如果刷大额，可以先从SOL链，或者base链跨USDC进来，这样走一次大额跨链更加保险 https://bridge.sui.io/bridge-usdc3️⃣ trade(刷交易量） 正常交易即可，但不要太频繁，sui做gas，建议进行大额交易 来回刷交易以达到刷交易量的目的，但是会损耗gas，注意控制成本 如何是小额频繁交易刷交易量的话有开源脚本，脚本是否安全自行甄别，出问题概不负责： https://github.com/fcmfcm1999/momentum4️⃣ 加池子，最低25U，担心币价波动损失的，建议添加稳定币交易对的池子5️⃣ 查看自己的排名]]></description>
            <content:encoded><![CDATA[<p>🪂空投活动教程：</p><p><strong>核心点</strong>：增加交易量及添加流动性，有意识的增添单笔跨额。</p><p>1⃣参与链接，推荐连接okx钱包</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://app.mmt.finance/leaderboard?refer=IAZB9P">https://app.mmt.finance/leaderboard?refer=IAZB9P</a></p><p>2⃣ 跨链USDC建议如果刷大额，可以先从SOL链，或者base链跨USDC进来，这样走一次大额跨链更加保险</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://bridge.sui.io/bridge-usdc">https://bridge.sui.io/bridge-usdc</a></p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/f38a0f3a14e2ef46bbf06770e96f4eb04f2815b93af5579e58811e562057d144.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>3️⃣ trade(刷交易量）</p><p>正常交易即可，但不要太频繁，sui做gas，建议进行大额交易</p><p>来回刷交易以达到刷交易量的目的，但是会损耗gas，注意控制成本</p><p><strong>如何是小额频繁交易刷交易量的话有开源脚本，脚本是否安全自行甄别，出问题概不负责：</strong></p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/fcmfcm1999/momentum">https://github.com/fcmfcm1999/momentum</a></p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/251845ed83ec13812ca61f5eb2abeec5ed4a9fdc186c161b48bbbe2dfa6c5aff.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>4️⃣ 加池子，最低25U，担心币价波动损失的，建议添加稳定币交易对的池子</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/ca305179e4406ccbe406ac633f9552de7335d591a9961e211681fc0fc779e8e7.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/0f87463563b32ebe3e6772cf5c028c86dfca6b4906d5f68b771dc675b496525f.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/eaffa38aaa63144f3a46418f7daf431e7e252c5b64198c621626d794ac155c5f.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>5️⃣ 查看自己的排名</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/d7752438d1f4ee3879dbc9d2665e51fa9f7bf8c7fac97b00640d422bc153d61e.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure>]]></content:encoded>
            <author>cryptoheng@newsletter.paragraph.com (CryptoHeng)</author>
        </item>
        <item>
            <title><![CDATA[MacSudio 编译 Chromium]]></title>
            <link>https://paragraph.com/@cryptoheng/macsudio-chromium</link>
            <guid>8BTsw69Vl6Y7HIJnexGO</guid>
            <pubDate>Sun, 26 Jan 2025 15:03:44 GMT</pubDate>
            <description><![CDATA[在 M2 芯片的 Mac 上编译 Chromium 源码是一个复杂且资源密集的过程，该过程可能耗费你高达 200GB 的硬盘，以及 200GB 的梯子流量请提前做好准备操作系统确保你的 Mac 运行的是最新版本的 macOS（建议至少是 macOS Catalina 10.15 以上），以获得最佳兼容性和性能。硬件要求编译 Chromium 需要较高的系统资源，建议至少具备以下配置： • CPU：多核处理器（M2 芯片已满足需求） • 内存：至少 16GB，建议 32GB 以上 • 存储：SSD，至少 100GB 可用空间 二、安装必要的软件和工具安装 Xcode 和命令行工具Xcode 提供了编译所需的开发工具。xcode-select --install sudo xcodebuild -license accept 2. 安装 Homebrew/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 通过 Homebrew 补充安装必要工具：...]]></description>
            <content:encoded><![CDATA[<p>在 M2 芯片的 Mac 上编译 Chromium 源码是一个复杂且资源密集的过程，该过程可能耗费你高达 200GB 的硬盘，以及 200GB 的梯子流量请提前做好准备</p><ol><li><p>操作系统</p></li></ol><p>确保你的 Mac 运行的是最新版本的 macOS（建议至少是 macOS Catalina 10.15 以上），以获得最佳兼容性和性能。</p><ol><li><p>硬件要求</p></li></ol><p>编译 Chromium 需要较高的系统资源，建议至少具备以下配置： • CPU：多核处理器（M2 芯片已满足需求） • 内存：至少 16GB，建议 32GB 以上 • 存储：SSD，至少 100GB 可用空间</p><p>二、安装必要的软件和工具</p><ol><li><p><strong>安装 Xcode 和命令行工具</strong></p></li></ol><p>Xcode 提供了编译所需的开发工具。</p><pre data-type="codeBlock" text="xcode-select --install
"><code>xcode<span class="hljs-operator">-</span>select <span class="hljs-operator">-</span><span class="hljs-operator">-</span>install
</code></pre><pre data-type="codeBlock" text="sudo xcodebuild -license accept
"><code>sudo xcodebuild -license <span class="hljs-keyword">accept</span>
</code></pre><p><strong>2. 安装 Homebrew</strong></p><pre data-type="codeBlock" text="/bin/bash -c &quot;$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)&quot;
"><code><span class="hljs-operator">/</span>bin<span class="hljs-operator">/</span>bash <span class="hljs-operator">-</span>c <span class="hljs-string">"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"</span>
</code></pre><p>通过 Homebrew 补充安装必要工具：</p><pre data-type="codeBlock" text="brew install ninja gn rsync
"><code></code></pre><p><strong>3. 安装 Python</strong></p><pre data-type="codeBlock" text="brew install python@3.11
"><code>brew install python<span class="hljs-keyword">@3</span>.11
</code></pre><p>确保 Python 3 的路径正确：</p><pre data-type="codeBlock" text="python3 --version
"><code>python3 <span class="hljs-operator">-</span><span class="hljs-operator">-</span>version
</code></pre><p><strong>4. 获取 depot_tools</strong></p><p>depot_tools 是 Chromium 项目的工具集合，用于管理源码检出和构建。</p><pre data-type="codeBlock" text="# 克隆 depot_tools 仓库
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

# 将 depot_tools 添加到 PATH
echo &apos;export PATH=&quot;$HOME/depot_tools:$PATH&quot;&apos; &gt;&gt; ~/.zshrc
source ~/.zshrc
"><code># 克隆 depot_tools 仓库
git clone https:<span class="hljs-comment">//chromium.googlesource.com/chromium/tools/depot_tools.git</span>

# 将 depot_tools 添加到 PATH
echo <span class="hljs-string">'export PATH="$HOME/depot_tools:$PATH"'</span> <span class="hljs-operator">></span><span class="hljs-operator">></span> <span class="hljs-operator">~</span><span class="hljs-operator">/</span>.zshrc
source <span class="hljs-operator">~</span><span class="hljs-operator">/</span>.zshrc
</code></pre><p><strong>三、检出 Chromium 源码</strong></p><p><strong>1. 创建工作目录</strong></p><pre data-type="codeBlock" text="mkdir ~/chromium &amp;&amp; cd ~/chromium
"><code>mkdir <span class="hljs-operator">~</span><span class="hljs-operator">/</span>chromium <span class="hljs-operator">&#x26;</span><span class="hljs-operator">&#x26;</span> cd <span class="hljs-operator">~</span><span class="hljs-operator">/</span>chromium
</code></pre><p><strong>2. 使用 fetch 工具检出源码</strong></p><pre data-type="codeBlock" text="fetch --nohooks chromium
"><code><span class="hljs-keyword">fetch</span> <span class="hljs-comment">--nohooks chromium</span>
</code></pre><p><strong>3. 进入源码目录</strong></p><pre data-type="codeBlock" text="cd src
"><code><span class="hljs-built_in">cd</span> src
</code></pre><p><strong>4. 同步依赖</strong></p><pre data-type="codeBlock" text="gclient sync
"><code>gclient <span class="hljs-built_in">sync</span>
</code></pre><p><strong>四、配置构建</strong></p><p><strong>1. 生成构建配置文件</strong></p><p>Chromium 使用 gn 作为构建生成器。首先，创建一个构建目录：</p><pre data-type="codeBlock" text="mkdir out/Default
"><code>mkdir <span class="hljs-keyword">out</span><span class="hljs-operator">/</span><span class="hljs-keyword">Default</span>
</code></pre><p><strong>2. 配置 gn 选项</strong></p><p>使用 gn args 命令打开配置界面：</p><pre data-type="codeBlock" text="gn args out/Default
"><code>gn args <span class="hljs-keyword">out</span><span class="hljs-operator">/</span><span class="hljs-keyword">Default</span>
</code></pre><p>在弹出的编辑器中，可以设置构建选项。以下是一个基本的配置示例：</p><pre data-type="codeBlock" text="is_debug = false
is_component_build = false
target_os = &quot;mac&quot;
target_cpu = &quot;arm64&quot;  # 对于 M2 芯片
symbol_level = 1
enable_nacl = false
"><code><span class="hljs-attr">is_debug</span> = <span class="hljs-literal">false</span>
<span class="hljs-attr">is_component_build</span> = <span class="hljs-literal">false</span>
<span class="hljs-attr">target_os</span> = <span class="hljs-string">"mac"</span>
<span class="hljs-attr">target_cpu</span> = <span class="hljs-string">"arm64"</span>  <span class="hljs-comment"># 对于 M2 芯片</span>
<span class="hljs-attr">symbol_level</span> = <span class="hljs-number">1</span>
<span class="hljs-attr">enable_nacl</span> = <span class="hljs-literal">false</span>
</code></pre><p>保存并退出编辑器。</p><p><strong>3. 生成 Ninja 构建文件</strong></p><pre data-type="codeBlock" text="gn gen out/Default
"><code>gn gen <span class="hljs-keyword">out</span><span class="hljs-operator">/</span><span class="hljs-keyword">Default</span>
</code></pre><p><strong>五、编译 Chromium</strong></p><p><strong>临时增加文件描述符限制</strong></p><pre data-type="codeBlock" text="ulimit -n 4096
"><code><span class="hljs-built_in">ulimit</span> -n 4096
</code></pre><p><strong>1. 使用 Ninja 进行编译</strong></p><pre data-type="codeBlock" text="ninja -C out/Default chrome
"><code>ninja <span class="hljs-operator">-</span>C <span class="hljs-keyword">out</span><span class="hljs-operator">/</span><span class="hljs-keyword">Default</span> chrome
</code></pre><p>此过程可能需要数小时，具体时间取决于你的系统性能和并行编译的程度。</p><p><strong>2. 并行编译优化</strong></p><p>你可以通过设置并行编译的线程数来加速编译过程。通常，设置为 CPU 核心数的两倍效果较好。</p><pre data-type="codeBlock" text="ninja -C out/Default -j 16 chrome
"><code>ninja <span class="hljs-operator">-</span>C out<span class="hljs-operator">/</span>Default <span class="hljs-operator">-</span>j <span class="hljs-number">16</span> chrome
</code></pre><p><strong>六、运行编译后的 Chromium</strong></p><p>编译完成后，可以通过以下命令启动 Chromium：</p><pre data-type="codeBlock" text="./out/Default/Chromium.app/Contents/MacOS/Chromium
"><code>./out<span class="hljs-operator">/</span>Default<span class="hljs-operator">/</span>Chromium.app/Contents<span class="hljs-operator">/</span>MacOS<span class="hljs-operator">/</span>Chromium
</code></pre>]]></content:encoded>
            <author>cryptoheng@newsletter.paragraph.com (CryptoHeng)</author>
        </item>
        <item>
            <title><![CDATA[Xterio 教程]]></title>
            <link>https://paragraph.com/@cryptoheng/xterio</link>
            <guid>9gvAkg3ZGnFfxK9LYItJ</guid>
            <pubDate>Thu, 12 Dec 2024 13:15:36 GMT</pubDate>
            <description><![CDATA[1、跨店 bnb 到 Xterio 链 https://bnb-bridge.xter.io/ 2、下载 bybit 钱包可以获得 2 倍积分奖励 https://chromewebstore.google.com/detail/bybit-wallet/pdliaogehgdbhbnmkklieghmmjkpigpa 3、进入官网 https://app.xter.io/activities/ai-campaign 4、连接钱包后建议切换自己的钱包作为积分领取钱包，如果没有像我这样好几个钱包就不用管跳过这步5、填写邀请码：c4a6f1e6e60e51c5c3d730e96195850b邀请码填写1填写邀请码 26、三次机会与机器人交流以获得最高的友好值，建议 chatgpt7、完成下方任务并领取积分，社交任务点下跳转就可以领了]]></description>
            <content:encoded><![CDATA[<p>1、跨店 bnb 到 Xterio 链</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://bnb-bridge.xter.io/">https://bnb-bridge.xter.io/</a></p><p>2、下载 bybit 钱包可以获得 2 倍积分奖励</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://chromewebstore.google.com/detail/bybit-wallet/pdliaogehgdbhbnmkklieghmmjkpigpa">https://chromewebstore.google.com/detail/bybit-wallet/pdliaogehgdbhbnmkklieghmmjkpigpa</a></p><p>3、进入官网</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://app.xter.io/activities/ai-campaign">https://app.xter.io/activities/ai-campaign</a></p><p>4、连接钱包后建议切换自己的钱包作为积分领取钱包，如果没有像我这样好几个钱包就不用管跳过这步</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/df71b2cc3fdda34714bcbb856de7c76b5a8ec348994c060110f596b37d8b009a.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>5、填写邀请码：c4a6f1e6e60e51c5c3d730e96195850b</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/d18374ef1afcd60648d27eff3054ef4c63e26ab0438b12aa5b80766ac57e3e8d.png" alt="邀请码填写1" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">邀请码填写1</figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/6b0be94f7d299f0c9b7dd2c3c1fd0e59339bda9c6bcd9e83541bb880b819ea5a.png" alt="填写邀请码 2" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">填写邀请码 2</figcaption></figure><p>6、三次机会与机器人交流以获得最高的友好值，建议 chatgpt</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/29c697021a7278ca707d5d1b4131ddee86a91bf28655bca8316a1c25b39da809.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>7、完成下方任务并领取积分，社交任务点下跳转就可以领了</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/2647f28bb23c9b272ad7a3c1c38db88bd16c1c768ca4949e85a10e27cccd2077.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure>]]></content:encoded>
            <author>cryptoheng@newsletter.paragraph.com (CryptoHeng)</author>
        </item>
        <item>
            <title><![CDATA[Babylon基础教程]]></title>
            <link>https://paragraph.com/@cryptoheng/babylon</link>
            <guid>7ZN4OZp5CigmEeHEh5xC</guid>
            <pubDate>Sat, 11 May 2024 10:37:47 GMT</pubDate>
            <description><![CDATA[Babylon 1、下载钱包 https://chromewebstore.google.com/detail/leather/ldinpeekobnhjjdofggfgjlcehhmanlj?hl=zh-CN&utm_source=ext_sidebar 2、下载好 钱包正常的创建或者直接导入助记词即可 3、切换Signet测试网络4、复制领水地址5、领水 https://signetfaucet.com/5、如果 IP 没问题地址没问题这样提示后应该一会儿就到账，但是以下提示不代表一定能领到水 6、下载 Keplr 钱包 https://chromewebstore.google.com/detail/keplr/dmkamcknogkgcdfhhbddcghachkejeap?hl=zh-CN&utm_source=ext_sidebar 7、下载后导入或者自己创建助记词 8、钱包创建好以后进入以下网页添加 Babylon Testnet 网络 https://chains.keplr.app/ 9、搜BBN然后点击 Add to Keplr10、钱包弹出点击确认11、搜索...]]></description>
            <content:encoded><![CDATA[<p>Babylon</p><p>1、下载钱包</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://chromewebstore.google.com/detail/leather/ldinpeekobnhjjdofggfgjlcehhmanlj?hl=zh-CN&amp;utm_source=ext_sidebar">https://chromewebstore.google.com/detail/leather/ldinpeekobnhjjdofggfgjlcehhmanlj?hl=zh-CN&amp;utm_source=ext_sidebar</a></p><p>2、下载好 钱包正常的创建或者直接导入助记词即可</p><p>3、切换Signet测试网络</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/eab911d861f7a243d5148a3e9c8b608be1386aa81c806e4ce6c88557fa0d19d1.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/d915a241c5eaff9feac575763e17308070145157a6b3587a97570e17cc3ffa80.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/48acb529eadffc39bc3b4a258b40eb824f88eb94bafdc5c51100dfa8da56c06d.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>4、复制领水地址</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/08c4f9d40e32ce94ba9217f50b60672d3650c153eb950a66a2dd4891a0c95e9d.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/57ff52f0ee9000191c808c63c9c6cf9593f954bd0a2884ed5918cc5efa7415ae.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>5、领水</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://signetfaucet.com/">https://signetfaucet.com/</a></p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/bfe8b0d52677d5b62667745f004e8173431dbd9c882cf165f20cae5e3fec2cbe.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>5、如果 IP 没问题地址没问题这样提示后应该一会儿就到账，但是以下提示不代表一定能领到水</p><p>6、下载 Keplr 钱包</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://chromewebstore.google.com/detail/keplr/dmkamcknogkgcdfhhbddcghachkejeap?hl=zh-CN&amp;utm_source=ext_sidebar">https://chromewebstore.google.com/detail/keplr/dmkamcknogkgcdfhhbddcghachkejeap?hl=zh-CN&amp;utm_source=ext_sidebar</a></p><p>7、下载后导入或者自己创建助记词</p><p>8、钱包创建好以后进入以下网页添加 Babylon Testnet 网络</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://chains.keplr.app/">https://chains.keplr.app/</a></p><p>9、搜BBN然后点击 Add to Keplr</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/a8ff66bb310362c56ab849c89b43af8119e32a07c065b2e31590c3a6a28afb34.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>10、钱包弹出点击确认</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/4771bd0f67bdb08d16d1e1105319426a8cecedd46112e971c28176ef5651a714.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>11、搜索 BBN 然后点击管理</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/7492e77a3742e036f760fc3c11101ba9b8af67154d96ea74f92075393285e13e.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>12、然后选中保存即可</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/b97a6c3edae532bb5ebfa457a2879fdac990721ba1af5a2efe8b8de649936be4.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>13、复制钱包地址</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/c0d1593fd00d29b7c1fd975530f9fb5ab672452cc0ca009fce0fc017c3048337.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>14、加入 Babylon 的 Discord</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://discord.com/invite/babylonglobal">https://discord.com/invite/babylonglobal</a></p><p>15 、领水 sBTC打开 OK 钱包点接收</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/8e947c92c504f9e9cc6212322b279fa3ccd5a9b5a4927cbb1ffaad536263dfc4.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>16、OK 钱包搜索 SBTC</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/e0e9f3ecfdf32bbc71e8ae1aa3a7cbcbb9e68e8bf8ca9f6aa82c5a3fdce6a793.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>18、复制 sbtc 地址</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/9528438e34486d13b69f20b00b700581827d59b1590e1a3a86960365db31d962.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>19、进入 babylon的 disocrd 频道中的faucet-signet-btc 子频道</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/ea829477872a354d05e69a338faf2a59430ad274e91509e8cfed9a151aff3470.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>20、聊天框输入 !faucet sbtc地址</p><p>例如：</p><p>!faucet tb1pn9d38ga23cg84wj3r3e57uq5rad5xqef3ufcq9l5xnnvv403s6xsq65r66</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/6e873ac8141834c4424baee8f1b4384f34e8de4fae78e8c38df3cc831b70d378.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>发送即可</p><p>21、进入 faucet-test-bbn 子频道</p><p>聊天框输入 !faucet bbn地址</p><p>例如：!faucet bbn186ppfr0dvhxnxznr2w4g44ef3gpl6l6ekmq9ru</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/6865170238de0c34262da0aba462a8075dd9c458eba48be23617214ff839bb2c.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>然后发送即可</p><p>发送完等频道里官方机器人回复你消息即代表领到ke</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/0b3168d464aef673f5a08e8e74b47cf8b01e04f1affa877e7b1c0423b72e04c0.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>可去 Keplr 钱包中查看</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/a0e55fcea893130a2b861818a550c37e0ce936bb4bdbf0030d0e1dd56edbcc84.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>22、最后打开第一个下载的 leather 钱包</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/c0a4c4ce2e465085e8c4a71b7609ee27d91cea54c82b1d41f55ffcf2919850ca.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>23、将领到的 btc 发送到 ok 钱包的 sbtc 地址中</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/68c35f298c427cfd3d60fc8a880f720141e24fe12a4c060554e961665817e928.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/f8712b20c6d4ae6fef8fcb4236ce383365b37f6bea54c3468622c2bb4e0fb3ff.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/e6ffe9247edc7b7344cf2aacd452a5280b3e15a2af7f4bbd309d527151cae18e.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>最后地址写这个</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/c15fef982847f93ccd347aef60262d94b34222ba4b4fe4cf2a49101573bba319.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>前期准备工作完毕</p>]]></content:encoded>
            <author>cryptoheng@newsletter.paragraph.com (CryptoHeng)</author>
        </item>
        <item>
            <title><![CDATA[Fairbrix挖矿教程]]></title>
            <link>https://paragraph.com/@cryptoheng/fairbrix</link>
            <guid>pY8kUfNCUwvQwwIpNmeW</guid>
            <pubDate>Sat, 06 Jan 2024 04:39:58 GMT</pubDate>
            <description><![CDATA[Fairbrix是 比特币论坛 11 年老项目起死回生，目前项目处于早期阶段！ Bitcointalk - https://bitcointalk.org/index.php?topic=46528.0 Github - https://github.com/coblee/Fairbrix Twitter post - https://x.com/nonfungiblemate/status/1737533265043452236?s=46 MiningStats - https://fbx.kawaii.kiwi/ Explorer - https://fairbrixscan.com/ 首先第一步安装钱包并同步区块高度： Wallet - https://web.archive.org/web/20191229192703/https://github.s3.amazonaws.com/downloads/coblee/Fairbrix/fairbrix-win-client-v1.0.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Cr...]]></description>
            <content:encoded><![CDATA[<p>Fairbrix是 比特币论坛 11 年老项目起死回生，目前项目处于早期阶段！</p><p>Bitcointalk -</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://bitcointalk.org/index.php?topic=46528.0">https://bitcointalk.org/index.php?topic=46528.0</a></p><p>Github -</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/coblee/Fairbrix">https://github.com/coblee/Fairbrix</a></p><p>Twitter post -</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://x.com/nonfungiblemate/status/1737533265043452236?s=46">https://x.com/nonfungiblemate/status/1737533265043452236?s=46</a></p><p>MiningStats - <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://fbx.kawaii.kiwi/">https://fbx.kawaii.kiwi/</a></p><p>Explorer - <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://fairbrixscan.com/">https://fairbrixscan.com/</a></p><p>首先第一步安装钱包并同步区块高度：</p><p>Wallet - <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://web.archive.org/web/20191229192703/https://github.s3.amazonaws.com/downloads/coblee/Fairbrix/fairbrix-win-client-v1.0.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&amp;X-Amz-Credential=AKIAISTNZFOVBIJMK3TQ%2F20191229%2Fus-east-1%2Fs3%2Faws4_request&amp;X-Amz-Date=20191229T192703Z&amp;X-Amz-Expires=300&amp;X-Amz-SignedHeaders=host&amp;X-Amz-Signature=1d8c8fd6e9848ad421c87403f67e8df4be80b0fa5285b3b84e0c918e65a905ba">https://web.archive.org/web/20191229192703/https://github.s3.amazonaws.com/downloads/coblee/Fairbrix/fairbrix-win-client-v1.0.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&amp;X-Amz-Credential=AKIAISTNZFOVBIJMK3TQ%2F20191229%2Fus-east-1%2Fs3%2Faws4_request&amp;X-Amz-Date=20191229T192703Z&amp;X-Amz-Expires=300&amp;X-Amz-SignedHeaders=host&amp;X-Amz-Signature=1d8c8fd6e9848ad421c87403f67e8df4be80b0fa5285b3b84e0c918e65a905ba</a></p><p>同步完成以后下载挖矿程序：</p><ol><li><p>Nvidia GPUs download ccminer here: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/tpruvot/ccminer/releases">https://github.com/tpruvot/ccminer/releases</a></p></li></ol><p>AMD GPUs download sgminer here: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://cryptomining-blog.com/2586-download-sgminer-4-2-1-scrypt-gpu-miner-for-windows/">https://cryptomining-blog.com/2586-download-sgminer-4-2-1-scrypt-gpu-miner-for-windows/</a> If Windows Defender and/or Windows Firewall blocks the download of the miner or the mining program itself when you try to run it you need to allow the download or the program (this is the &quot;at your own risk&quot; part)</p><p>根据以上教程配置号挖矿程序后启动挖矿即可，每个块 25 个币币价官方 dc 的 otc 频道里 0.25U</p><p>这里我给大家同步了区块高度，锄头和钱包配置文件也都配置好了，打开钱包软件自动生成钱包，把剩余的区块高度同步完即可开启锄头挖矿：</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.123pan.com/s/352Cjv-AFVvd.html">https://www.123pan.com/s/352Cjv-AFVvd.html</a></p><p>开启钱包</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/d44ad82db2b0712793205b25e02c600d31fff1815c5c205a02b1564a30b78066.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>等待同步</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/5e5cbacd268e4eaffabafe71418d357f77861ca2e2d1e96a56061d26512804c8.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>同步完成后启动锄头</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/37e9bb2cce3410f8c740941a329af3f3fffcfda9081eb2e0a7a14fd4285443ab.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>启动成功后在钱包的Transactions 中可以看到自己的挖到的信息，如果挖到以后要等 150 个区块确认才会到余额</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/a349e2d6c915040aac09d5c03b3b68c13dcac7aaec3e8789068d9a9607aad36a.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>挖到以后这里挂单就可以了</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/59c8b86873cf471d2a55b6456bc3349265f7667d0fea1783fd57e3398a21e454.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure>]]></content:encoded>
            <author>cryptoheng@newsletter.paragraph.com (CryptoHeng)</author>
        </item>
        <item>
            <title><![CDATA[Linea铭文获取🎫的教程]]></title>
            <link>https://paragraph.com/@cryptoheng/linea</link>
            <guid>EMfsnbG7C8UQdVAy4yGu</guid>
            <pubDate>Thu, 04 Jan 2024 09:20:56 GMT</pubDate>
            <description><![CDATA[首先我们需要邀请链接： https://ally.build?inviteCode=HFHWYF https://ally.build?inviteCode=BKN0K3 https://ally.build?inviteCode=AWEKOF https://ally.build?inviteCode=RNHBJ9 https://ally.build?inviteCode=U5C1EP https://ally.build?inviteCode=LY6PM4 https://ally.build?inviteCode=D5SSJO https://ally.build?inviteCode=EMCMQL https://ally.build?inviteCode=SRNQK2 https://ally.build?inviteCode=CTHUSF https://ally.build?inviteCode=K2SHU3 https://ally.build?inviteCode=N1IYL8 https://ally.build?inviteCode=DEA1EY http...]]></description>
            <content:encoded><![CDATA[<p>首先我们需要邀请链接：</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=HFHWYF">https://ally.build?inviteCode=HFHWYF</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=BKN0K3">https://ally.build?inviteCode=BKN0K3</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=AWEKOF">https://ally.build?inviteCode=AWEKOF</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=RNHBJ9">https://ally.build?inviteCode=RNHBJ9</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=U5C1EP">https://ally.build?inviteCode=U5C1EP</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=LY6PM4">https://ally.build?inviteCode=LY6PM4</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=D5SSJO">https://ally.build?inviteCode=D5SSJO</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=EMCMQL">https://ally.build?inviteCode=EMCMQL</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=SRNQK2">https://ally.build?inviteCode=SRNQK2</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=CTHUSF">https://ally.build?inviteCode=CTHUSF</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=K2SHU3">https://ally.build?inviteCode=K2SHU3</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=N1IYL8">https://ally.build?inviteCode=N1IYL8</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=DEA1EY">https://ally.build?inviteCode=DEA1EY</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=XVD4H6">https://ally.build?inviteCode=XVD4H6</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=UVFK9U">https://ally.build?inviteCode=UVFK9U</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=KWYD9H">https://ally.build?inviteCode=KWYD9H</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=KXWXEP">https://ally.build?inviteCode=KXWXEP</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=MAPOHK">https://ally.build?inviteCode=MAPOHK</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=UFLH2V">https://ally.build?inviteCode=UFLH2V</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=FU3E4Q">https://ally.build?inviteCode=FU3E4Q</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=BXZXWM">https://ally.build?inviteCode=BXZXWM</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=M6VCM5">https://ally.build?inviteCode=M6VCM5</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=GFYPPB">https://ally.build?inviteCode=GFYPPB</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=R6JOHE">https://ally.build?inviteCode=R6JOHE</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=EAMGLT">https://ally.build?inviteCode=EAMGLT</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=6FJGZS">https://ally.build?inviteCode=6FJGZS</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=YLN4SI">https://ally.build?inviteCode=YLN4SI</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=AGRUT3">https://ally.build?inviteCode=AGRUT3</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=1G6WBL">https://ally.build?inviteCode=1G6WBL</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=LNC4US">https://ally.build?inviteCode=LNC4US</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=VFXU5R">https://ally.build?inviteCode=VFXU5R</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=7FVORD">https://ally.build?inviteCode=7FVORD</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=ZSCZDR">https://ally.build?inviteCode=ZSCZDR</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=G3IGGZ">https://ally.build?inviteCode=G3IGGZ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=XLQVXU">https://ally.build?inviteCode=XLQVXU</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=F3GYEY">https://ally.build?inviteCode=F3GYEY</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=DFCLDL">https://ally.build?inviteCode=DFCLDL</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=ZK6G5P">https://ally.build?inviteCode=ZK6G5P</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=YD510I">https://ally.build?inviteCode=YD510I</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=VJRHJC">https://ally.build?inviteCode=VJRHJC</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=SQH4JG">https://ally.build?inviteCode=SQH4JG</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=U0JCKY">https://ally.build?inviteCode=U0JCKY</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=UNCFIT">https://ally.build?inviteCode=UNCFIT</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=CJUNY7">https://ally.build?inviteCode=CJUNY7</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=EICIH3">https://ally.build?inviteCode=EICIH3</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=INLNQG">https://ally.build?inviteCode=INLNQG</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=HDRTF6">https://ally.build?inviteCode=HDRTF6</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=FWZUWM">https://ally.build?inviteCode=FWZUWM</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=WLCHFF">https://ally.build?inviteCode=WLCHFF</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=DISAM7">https://ally.build?inviteCode=DISAM7</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=MNQGBJ">https://ally.build?inviteCode=MNQGBJ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=XUP15B">https://ally.build?inviteCode=XUP15B</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=FYOEBA">https://ally.build?inviteCode=FYOEBA</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=IOCZS8">https://ally.build?inviteCode=IOCZS8</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=MZIDZD">https://ally.build?inviteCode=MZIDZD</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=RRQ8OG">https://ally.build?inviteCode=RRQ8OG</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=YFEQP7">https://ally.build?inviteCode=YFEQP7</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=SZNXKC">https://ally.build?inviteCode=SZNXKC</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=PEWULZ">https://ally.build?inviteCode=PEWULZ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=AGKFRA">https://ally.build?inviteCode=AGKFRA</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=QB7M4T">https://ally.build?inviteCode=QB7M4T</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=INN5UY">https://ally.build?inviteCode=INN5UY</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=NGUFWK">https://ally.build?inviteCode=NGUFWK</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=ICWKND">https://ally.build?inviteCode=ICWKND</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=WWOF5U">https://ally.build?inviteCode=WWOF5U</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=8ZRYMZ">https://ally.build?inviteCode=8ZRYMZ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=DOMKFI">https://ally.build?inviteCode=DOMKFI</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=FOBQAV">https://ally.build?inviteCode=FOBQAV</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=ZONVTH">https://ally.build?inviteCode=ZONVTH</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=0NSLJC">https://ally.build?inviteCode=0NSLJC</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=DMNCRD">https://ally.build?inviteCode=DMNCRD</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=E4GFXN">https://ally.build?inviteCode=E4GFXN</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=6Z0DCK">https://ally.build?inviteCode=6Z0DCK</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=JKA1FJ">https://ally.build?inviteCode=JKA1FJ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=ZHCZKK">https://ally.build?inviteCode=ZHCZKK</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=TJD18X">https://ally.build?inviteCode=TJD18X</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=KGGE05">https://ally.build?inviteCode=KGGE05</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=TWUWYL">https://ally.build?inviteCode=TWUWYL</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=CRWGLL">https://ally.build?inviteCode=CRWGLL</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=BYFXBS">https://ally.build?inviteCode=BYFXBS</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=NUB93I">https://ally.build?inviteCode=NUB93I</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=GHHJIV">https://ally.build?inviteCode=GHHJIV</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=S7RVDW">https://ally.build?inviteCode=S7RVDW</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=SLBSJ9">https://ally.build?inviteCode=SLBSJ9</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=1IFRHP">https://ally.build?inviteCode=1IFRHP</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=GZ0W2R">https://ally.build?inviteCode=GZ0W2R</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=9XH8O4">https://ally.build?inviteCode=9XH8O4</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=HADE5K">https://ally.build?inviteCode=HADE5K</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=YXCO0E">https://ally.build?inviteCode=YXCO0E</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=DHGPO8">https://ally.build?inviteCode=DHGPO8</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=RSGX0B">https://ally.build?inviteCode=RSGX0B</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=2ARALA">https://ally.build?inviteCode=2ARALA</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=XKEWY2">https://ally.build?inviteCode=XKEWY2</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=AHN96T">https://ally.build?inviteCode=AHN96T</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=XD5WFL">https://ally.build?inviteCode=XD5WFL</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=UX0TNF">https://ally.build?inviteCode=UX0TNF</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=6AVPFV">https://ally.build?inviteCode=6AVPFV</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=F1KABH">https://ally.build?inviteCode=F1KABH</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=QH1E7K">https://ally.build?inviteCode=QH1E7K</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=V1CPPW">https://ally.build?inviteCode=V1CPPW</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=PUAIOS">https://ally.build?inviteCode=PUAIOS</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=4UIGB3">https://ally.build?inviteCode=4UIGB3</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=M1JHHX">https://ally.build?inviteCode=M1JHHX</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=E7TRST">https://ally.build?inviteCode=E7TRST</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=BZS6HO">https://ally.build?inviteCode=BZS6HO</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=EJAJAP">https://ally.build?inviteCode=EJAJAP</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=8VY9GN">https://ally.build?inviteCode=8VY9GN</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=XZFA62">https://ally.build?inviteCode=XZFA62</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=L5RZON">https://ally.build?inviteCode=L5RZON</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=L3F5C3">https://ally.build?inviteCode=L3F5C3</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=H2WQH2">https://ally.build?inviteCode=H2WQH2</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=EJXNVU">https://ally.build?inviteCode=EJXNVU</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=VQ72HV">https://ally.build?inviteCode=VQ72HV</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=MOCHC5">https://ally.build?inviteCode=MOCHC5</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=L696B2">https://ally.build?inviteCode=L696B2</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=OV2CPG">https://ally.build?inviteCode=OV2CPG</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=8LUWVU">https://ally.build?inviteCode=8LUWVU</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=DDM3QU">https://ally.build?inviteCode=DDM3QU</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=QBWHPR">https://ally.build?inviteCode=QBWHPR</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=9ZAEZE">https://ally.build?inviteCode=9ZAEZE</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=HWUVGU">https://ally.build?inviteCode=HWUVGU</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=AU3VHP">https://ally.build?inviteCode=AU3VHP</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=V1GNVL">https://ally.build?inviteCode=V1GNVL</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=AIDRNG">https://ally.build?inviteCode=AIDRNG</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=APEK0U">https://ally.build?inviteCode=APEK0U</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=9CUFFM">https://ally.build?inviteCode=9CUFFM</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=X4E3CW">https://ally.build?inviteCode=X4E3CW</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=P8PKSW">https://ally.build?inviteCode=P8PKSW</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=NUC60X">https://ally.build?inviteCode=NUC60X</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=WBZDYG">https://ally.build?inviteCode=WBZDYG</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=J0SH6L">https://ally.build?inviteCode=J0SH6L</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=IUMTO9">https://ally.build?inviteCode=IUMTO9</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=GXVHCY">https://ally.build?inviteCode=GXVHCY</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=D6WOXK">https://ally.build?inviteCode=D6WOXK</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=SQQYPP">https://ally.build?inviteCode=SQQYPP</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=PPRLAT">https://ally.build?inviteCode=PPRLAT</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=63DEEZ">https://ally.build?inviteCode=63DEEZ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=RXSDQU">https://ally.build?inviteCode=RXSDQU</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=89KY7P">https://ally.build?inviteCode=89KY7P</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=KLNIOE">https://ally.build?inviteCode=KLNIOE</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=8KULEI">https://ally.build?inviteCode=8KULEI</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=CVYP3S">https://ally.build?inviteCode=CVYP3S</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=PNLXTS">https://ally.build?inviteCode=PNLXTS</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=GFV5HC">https://ally.build?inviteCode=GFV5HC</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=E53YGM">https://ally.build?inviteCode=E53YGM</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=DKYJIM">https://ally.build?inviteCode=DKYJIM</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=WNOXIG">https://ally.build?inviteCode=WNOXIG</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=QSZBYG">https://ally.build?inviteCode=QSZBYG</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=QJX5LQ">https://ally.build?inviteCode=QJX5LQ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=GRYZGA">https://ally.build?inviteCode=GRYZGA</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=SXF4ZD">https://ally.build?inviteCode=SXF4ZD</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=MCO8NX">https://ally.build?inviteCode=MCO8NX</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=7EV4EY">https://ally.build?inviteCode=7EV4EY</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=FRWHKL">https://ally.build?inviteCode=FRWHKL</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=7WMIU7">https://ally.build?inviteCode=7WMIU7</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=2JMNTF">https://ally.build?inviteCode=2JMNTF</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=7CA3CG">https://ally.build?inviteCode=7CA3CG</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=CZ9VFV">https://ally.build?inviteCode=CZ9VFV</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=6JUNP4">https://ally.build?inviteCode=6JUNP4</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=BWMHXD">https://ally.build?inviteCode=BWMHXD</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=VZIBHX">https://ally.build?inviteCode=VZIBHX</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=FYHZUQ">https://ally.build?inviteCode=FYHZUQ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=IP9RHB">https://ally.build?inviteCode=IP9RHB</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=GDZYRH">https://ally.build?inviteCode=GDZYRH</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=APMC8L">https://ally.build?inviteCode=APMC8L</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=UCFLNM">https://ally.build?inviteCode=UCFLNM</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=QZH7UK">https://ally.build?inviteCode=QZH7UK</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=8UX9V7">https://ally.build?inviteCode=8UX9V7</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=GMC5C0">https://ally.build?inviteCode=GMC5C0</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=OGZ2EY">https://ally.build?inviteCode=OGZ2EY</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=Z79CDA">https://ally.build?inviteCode=Z79CDA</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=GGVBGY">https://ally.build?inviteCode=GGVBGY</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=G1EIQT">https://ally.build?inviteCode=G1EIQT</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=8KXLWI">https://ally.build?inviteCode=8KXLWI</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=GSQTTZ">https://ally.build?inviteCode=GSQTTZ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=YHSGTI">https://ally.build?inviteCode=YHSGTI</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=GEQ1KL">https://ally.build?inviteCode=GEQ1KL</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=TITSOT">https://ally.build?inviteCode=TITSOT</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=RM1BZG">https://ally.build?inviteCode=RM1BZG</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=CXW41F">https://ally.build?inviteCode=CXW41F</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=A1QK1N">https://ally.build?inviteCode=A1QK1N</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=R292IT">https://ally.build?inviteCode=R292IT</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=UDEUU1">https://ally.build?inviteCode=UDEUU1</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=XJCQBH">https://ally.build?inviteCode=XJCQBH</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=VVZNID">https://ally.build?inviteCode=VVZNID</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=R4GT4R">https://ally.build?inviteCode=R4GT4R</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=NHIWP6">https://ally.build?inviteCode=NHIWP6</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=LPR75Z">https://ally.build?inviteCode=LPR75Z</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=YKO3OU">https://ally.build?inviteCode=YKO3OU</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=KBQCWK">https://ally.build?inviteCode=KBQCWK</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=IHKP1S">https://ally.build?inviteCode=IHKP1S</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=CBZRCE">https://ally.build?inviteCode=CBZRCE</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=T6QWP8">https://ally.build?inviteCode=T6QWP8</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=CMDOBV">https://ally.build?inviteCode=CMDOBV</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=SM2TRD">https://ally.build?inviteCode=SM2TRD</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=KMOH6Y">https://ally.build?inviteCode=KMOH6Y</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=HGEVCJ">https://ally.build?inviteCode=HGEVCJ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=WB8LQT">https://ally.build?inviteCode=WB8LQT</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=NYE9K8">https://ally.build?inviteCode=NYE9K8</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=ITMIVY">https://ally.build?inviteCode=ITMIVY</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=KEPKDX">https://ally.build?inviteCode=KEPKDX</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=4RMP0Z">https://ally.build?inviteCode=4RMP0Z</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=RGTJOQ">https://ally.build?inviteCode=RGTJOQ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=NWZ5CZ">https://ally.build?inviteCode=NWZ5CZ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=NQ1S1B">https://ally.build?inviteCode=NQ1S1B</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=8XVRHD">https://ally.build?inviteCode=8XVRHD</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=ECVIUN">https://ally.build?inviteCode=ECVIUN</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=WWZP87">https://ally.build?inviteCode=WWZP87</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=31OEHL">https://ally.build?inviteCode=31OEHL</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=Z99PIO">https://ally.build?inviteCode=Z99PIO</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=QF25PT">https://ally.build?inviteCode=QF25PT</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=FBUP2Y">https://ally.build?inviteCode=FBUP2Y</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=D0I2SQ">https://ally.build?inviteCode=D0I2SQ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=M3AMCJ">https://ally.build?inviteCode=M3AMCJ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=LJHQPM">https://ally.build?inviteCode=LJHQPM</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=DEAYUP">https://ally.build?inviteCode=DEAYUP</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=YR8CET">https://ally.build?inviteCode=YR8CET</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=DVRMDB">https://ally.build?inviteCode=DVRMDB</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=EQFCA7">https://ally.build?inviteCode=EQFCA7</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=C5QDVB">https://ally.build?inviteCode=C5QDVB</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=ZM0P1G">https://ally.build?inviteCode=ZM0P1G</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=DCUSBL">https://ally.build?inviteCode=DCUSBL</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=OPKW4W">https://ally.build?inviteCode=OPKW4W</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=OAIVFF">https://ally.build?inviteCode=OAIVFF</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=HOEEMJ">https://ally.build?inviteCode=HOEEMJ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=G2ELLN">https://ally.build?inviteCode=G2ELLN</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=BUJJQ6">https://ally.build?inviteCode=BUJJQ6</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=PEB4WT">https://ally.build?inviteCode=PEB4WT</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=QE7R7K">https://ally.build?inviteCode=QE7R7K</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=1OYZMQ">https://ally.build?inviteCode=1OYZMQ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=MXSBMP">https://ally.build?inviteCode=MXSBMP</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=UQB6NU">https://ally.build?inviteCode=UQB6NU</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=UBEXFA">https://ally.build?inviteCode=UBEXFA</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=YZUOFP">https://ally.build?inviteCode=YZUOFP</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=9KJS0A">https://ally.build?inviteCode=9KJS0A</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=USMCSN">https://ally.build?inviteCode=USMCSN</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=XQOV3E">https://ally.build?inviteCode=XQOV3E</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=22EMUW">https://ally.build?inviteCode=22EMUW</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=POHH9V">https://ally.build?inviteCode=POHH9V</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=DJZV1X">https://ally.build?inviteCode=DJZV1X</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=1FX6AX">https://ally.build?inviteCode=1FX6AX</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=YVGCFE">https://ally.build?inviteCode=YVGCFE</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=XDD1WQ">https://ally.build?inviteCode=XDD1WQ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=CVYGY0">https://ally.build?inviteCode=CVYGY0</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=NADZDL">https://ally.build?inviteCode=NADZDL</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=HOI6OF">https://ally.build?inviteCode=HOI6OF</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=IEJKMH">https://ally.build?inviteCode=IEJKMH</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=BDOUS9">https://ally.build?inviteCode=BDOUS9</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=BTQJQX">https://ally.build?inviteCode=BTQJQX</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=0H8PAO">https://ally.build?inviteCode=0H8PAO</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=3VSVJG">https://ally.build?inviteCode=3VSVJG</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=OQ9IIF">https://ally.build?inviteCode=OQ9IIF</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=0Q55VW">https://ally.build?inviteCode=0Q55VW</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=VP9POR">https://ally.build?inviteCode=VP9POR</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=6YAS4H">https://ally.build?inviteCode=6YAS4H</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=IG7YBA">https://ally.build?inviteCode=IG7YBA</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=JRH1PN">https://ally.build?inviteCode=JRH1PN</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=LAMYCL">https://ally.build?inviteCode=LAMYCL</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=XA9QNE">https://ally.build?inviteCode=XA9QNE</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=QUQGXN">https://ally.build?inviteCode=QUQGXN</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=VCHNVN">https://ally.build?inviteCode=VCHNVN</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=HCHROR">https://ally.build?inviteCode=HCHROR</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=YDBXD4">https://ally.build?inviteCode=YDBXD4</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=0MDRWP">https://ally.build?inviteCode=0MDRWP</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=Q9I61U">https://ally.build?inviteCode=Q9I61U</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=WCYK8U">https://ally.build?inviteCode=WCYK8U</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=FJRARU">https://ally.build?inviteCode=FJRARU</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=KT0YEQ">https://ally.build?inviteCode=KT0YEQ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=YZJTVQ">https://ally.build?inviteCode=YZJTVQ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=6DZJNM">https://ally.build?inviteCode=6DZJNM</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=KCUYSV">https://ally.build?inviteCode=KCUYSV</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=NRWFR9">https://ally.build?inviteCode=NRWFR9</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=KH10SX">https://ally.build?inviteCode=KH10SX</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=WMOFRX">https://ally.build?inviteCode=WMOFRX</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=1YH0AH">https://ally.build?inviteCode=1YH0AH</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=DLAHMR">https://ally.build?inviteCode=DLAHMR</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=VYHGWZ">https://ally.build?inviteCode=VYHGWZ</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=JRWBN0">https://ally.build?inviteCode=JRWBN0</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=7JAIBY">https://ally.build?inviteCode=7JAIBY</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=RUZFC7">https://ally.build?inviteCode=RUZFC7</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=HCD591">https://ally.build?inviteCode=HCD591</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=FD7ZOU">https://ally.build?inviteCode=FD7ZOU</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=BJHMBV">https://ally.build?inviteCode=BJHMBV</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=Z857VO">https://ally.build?inviteCode=Z857VO</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=AL87OX">https://ally.build?inviteCode=AL87OX</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=WWCO2Z">https://ally.build?inviteCode=WWCO2Z</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=RWQRIU">https://ally.build?inviteCode=RWQRIU</a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ally.build?inviteCode=LBGNY3">https://ally.build?inviteCode=LBGNY3</a></p><p>找个能用的邀请链接然后进去以后会出现弹窗：</p><p>按 F12 或者 右键单击 点检查</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/ae1cc53d89a95c42226cea699beb673d85f7e02b6cd7f83d2f5d7a6b473c7603.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/f56326b68fa30169d6f83ac3bcff499c27b2b52f83246519ca59d789190ef0fc.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/3ee843bbaceb25a76c84accec2e79fefe665badb117e927d84e62ae5f9f25025.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/1012ebf997ad8939ff2a4a58a303f2e8fe54a8f15cd8ef91c2c38d65adeb4d05.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/228276bfca1099ac836149d7ec4711e38e4811c8d2f03024615cc394dd2fa556.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>删除以后可以进入正常注册流程，遇到弹窗重复以上步骤删除即可！</p><p>下面讲下如何获取积分换票🎫</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/f683cf9b559fa0b9a2484f2afbc44160d2cc8a7e674f775b9aade363c15311f8.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/577eaae471d17d1ba12f23d412a3c80cf383265726d80ed129ad1f0c243428a4.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/20db72f1adb0ab286d0e3c3e4187c11474c9277db3dee7924eb0b4b01fae32a7.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>邀请 10 个朋友注册领 1000 张票</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/5ac210983554f645faeaa5797745f98a76b08555104c1c17825300232f104183.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure>]]></content:encoded>
            <author>cryptoheng@newsletter.paragraph.com (CryptoHeng)</author>
        </item>
        <item>
            <title><![CDATA[SBLinea Week8]]></title>
            <link>https://paragraph.com/@cryptoheng/sblinea-week8</link>
            <guid>sfTCV5wn3KhsTqMivX88</guid>
            <pubDate>Tue, 27 Jun 2023 02:51:33 GMT</pubDate>
            <description><![CDATA[任务 51：Swap USDT/NBS using NoobysSwapETH 兑换NBS 和 USDThttps://noobysswap.io/?inputCurrency=ETH&outputCurrency=0xb6f7E3e51053CD7Be555696aF0a136Bdf58Aa56a#/swap https://noobysswap.io/?inputCurrency=ETH&outputCurrency=0xb6f7E3e51053CD7Be555696aF0a136Bdf58Aa56a#/swap任务 52：Add Liquidity USDT/NBS on NoobysSwap添加 USDT 和 NBS 流动性https://noobysswap.io/?inputCurrency=ETH&outputCurrency=0xF7C13fEFf0b098eE55A58683a54509fDe40eCbaa#/add?currencyA=0xF7C13fEFf0b098eE55A58683a54509fDe40eCbaa&currencyB=0xb6f7E3e5...]]></description>
            <content:encoded><![CDATA[<h2 id="h-51swap-usdtnbs-using-noobysswap" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">任务 51：Swap USDT/NBS using NoobysSwap</h2><h2 id="h-eth-nbs-usdt" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">ETH 兑换NBS 和 USDT</h2><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://noobysswap.io/?inputCurrency=ETH&amp;outputCurrency=0xb6f7E3e51053CD7Be555696aF0a136Bdf58Aa56a#/swap">https://noobysswap.io/?inputCurrency=ETH&amp;outputCurrency=0xb6f7E3e51053CD7Be555696aF0a136Bdf58Aa56a#/swap</a></p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://noobysswap.io/?inputCurrency=ETH&amp;outputCurrency=0xb6f7E3e51053CD7Be555696aF0a136Bdf58Aa56a#/swap">https://noobysswap.io/?inputCurrency=ETH&amp;outputCurrency=0xb6f7E3e51053CD7Be555696aF0a136Bdf58Aa56a#/swap</a></p><h2 id="h-52add-liquidity-usdtnbs-on-noobysswap" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">任务 52：Add Liquidity USDT/NBS on NoobysSwap</h2><h2 id="h-usdt-nbs" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">添加 USDT 和 NBS 流动性</h2><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://noobysswap.io/?inputCurrency=ETH&amp;outputCurrency=0xF7C13fEFf0b098eE55A58683a54509fDe40eCbaa#/add?currencyA=0xF7C13fEFf0b098eE55A58683a54509fDe40eCbaa&amp;currencyB=0xb6f7E3e51053CD7Be555696aF0a136Bdf58Aa56a">https://noobysswap.io/?inputCurrency=ETH&amp;outputCurrency=0xF7C13fEFf0b098eE55A58683a54509fDe40eCbaa#/add?currencyA=0xF7C13fEFf0b098eE55A58683a54509fDe40eCbaa&amp;currencyB=0xb6f7E3e51053CD7Be555696aF0a136Bdf58Aa56a</a></p><h2 id="h-48metalswap-open-a-new-hedging-swap-on-linea-testnet" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">任务 48：[MetalSwap] Open a New Hedging Swap on Linea Testnet</h2><h2 id="h-wbtc-usdc-get-goerli-test-wbtcand-usdc" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">添加WBTC 和USDC 到钱包，然后点 GET GOERLI TEST WBTCAND USDC</h2><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/cdb0db50d1586bdcdd4dd1740480346e10b2d0f5ae0931981e2dca9342537254.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://testnet-linea.metalswap.finance/#/faucets">https://testnet-linea.metalswap.finance/#/faucets</a></p><h2 id="h-49metalswap-open-3-hedging-swap-positions-on-linea-testnet" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">任务 49：[MetalSwap] Open 3 Hedging Swap Positions on Linea Testnet</h2><h2 id="h-1usdc2-3003-6-4-10percent-3" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">1、选择USDC，2、输入 300，3、天数改为 6 天后的日期，4、调整到 10%（要创建 3 次，我感觉金额日期随意自测）</h2><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/7069bab5f6d9c50ae0897344fd32bef4077aec971b63d363f60cf58b659376ac.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://testnet-linea.metalswap.finance/#/swap">https://testnet-linea.metalswap.finance/#/swap</a></p><h2 id="h-50-metalswap-mint-a-nft-lp-position-on-linea-testnet" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">任务 50 ：[MetalSwap] Mint a NFT LP position on Linea testnet</h2><h2 id="h-mint-nft" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Mint 一个 NFT即可</h2><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://testnet-linea.metalswap.finance/#/nfts-liquidity-pool">https://testnet-linea.metalswap.finance/#/nfts-liquidity-pool</a></p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/1f5be32adbbef04cfc9e40aba62478035dbda432466a04aea0b9852d137cd656.png" alt="" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="hide-figcaption"></figcaption></figure><h2 id="h-47complete-at-least-one-swap-with-any-amount-on-openocean" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">任务 47：Complete at least one swap with any amount on OpenOcean</h2><h2 id="h-swapeth-weth" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Swap任意金额我提供的链接是ETH-WETH 的</h2><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://app.openocean.finance/CLASSIC#/LINEA/ETH/WETH">https://app.openocean.finance/CLASSIC#/LINEA/ETH/WETH</a></p><h2 id="h-46kuma-nft-swapper" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">任务46：KUMA NFT Swapper</h2><h2 id="h-you" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">任务网页暂时 you 问题</h2><h2 id="h-44symbiosis-make-a-cross-chain-swap-to-linea-eg-eth-goerli-to-usdt-linea" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">任务 44：[Symbiosis] - Make a cross-chain swap to Linea (E.g. ETH Goerli to USDT Linea)</h2><h2 id="h-swap-eth-usdt" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">SWAP ETH 换成 USDT</h2><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://testnet.symbiosis.finance/swap?amountIn=0.01&amp;chainIn=Linea&amp;chainOut=Linea&amp;tokenIn=ETH&amp;tokenOut=0xAED47A51AeFa6f95A388aDA3c459d94FF46fC4BB">https://testnet.symbiosis.finance/swap?amountIn=0.01&amp;chainIn=Linea&amp;chainOut=Linea&amp;tokenIn=ETH&amp;tokenOut=0xAED47A51AeFa6f95A388aDA3c459d94FF46fC4BB</a></p><h2 id="h-45symbiosis-make-an-on-chain-swap-on-linea-eg-usdt-linea-to-eth-linea" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">任务 45：[Symbiosis] - Make an on-chain swap on Linea (E.g. USDT Linea to ETH Linea)</h2><h2 id="h-swap-usdt-eth" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">SWAP USDT 换成 ETH</h2><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://testnet.symbiosis.finance/swap?amountIn=300&amp;chainIn=Linea&amp;chainOut=Linea&amp;tokenIn=0xAED47A51AeFa6f95A388aDA3c459d94FF46fC4BB&amp;tokenOut=ETH">https://testnet.symbiosis.finance/swap?amountIn=300&amp;chainIn=Linea&amp;chainOut=Linea&amp;tokenIn=0xAED47A51AeFa6f95A388aDA3c459d94FF46fC4BB&amp;tokenOut=ETH</a></p>]]></content:encoded>
            <author>cryptoheng@newsletter.paragraph.com (CryptoHeng)</author>
        </item>
        <item>
            <title><![CDATA[Linea 银河任务5月3-9日]]></title>
            <link>https://paragraph.com/@cryptoheng/linea-5-3-9</link>
            <guid>h2FnTGS7wcRumRu4BeT4</guid>
            <pubDate>Wed, 03 May 2023 07:18:35 GMT</pubDate>
            <description><![CDATA[首先领水 BSC：领BNB BUSD USDC DAI https://testnet.bnbchain.org/faucet-smart Goerli：领gETH https://goerlifaucet.com/ 领HOP，DAI，USDC，USDC领不到就拿gETH去Uniswap兑换一些 https://goerli.hop.exchange/#/faucet?token=ETH&destNetwork=linea&sourceNetwork=ethereum 兑换地址，进去后切Goerli测试网 https://app.uniswap.org/#/swap Polygon Mumbai：领 MATIC https://mumbaifaucet.com/ Avalanche Fuji领水：EUROEe TUSD领不到就领别的去兑换 https://faucet.avax.network/开始做银河任务：https://galxe.com/Linea/campaign/GCd1YUZyrN任务一从BSC测试网将BUSD跨链到Linea https://dev-cbridge...]]></description>
            <content:encoded><![CDATA[<p>首先领水</p><p>BSC：领BNB BUSD USDC DAI</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://testnet.bnbchain.org/faucet-smart">https://testnet.bnbchain.org/faucet-smart</a></p><p>Goerli：领gETH</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://goerlifaucet.com/">https://goerlifaucet.com/</a></p><p>领HOP，DAI，USDC，USDC领不到就拿gETH去Uniswap兑换一些</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://goerli.hop.exchange/#/faucet?token=ETH&amp;destNetwork=linea&amp;sourceNetwork=ethereum">https://goerli.hop.exchange/#/faucet?token=ETH&amp;destNetwork=linea&amp;sourceNetwork=ethereum</a></p><p>兑换地址，进去后切Goerli测试网</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://app.uniswap.org/#/swap">https://app.uniswap.org/#/swap</a></p><p>Polygon Mumbai：领 MATIC</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mumbaifaucet.com/">https://mumbaifaucet.com/</a></p><p>Avalanche Fuji领水：EUROEe TUSD领不到就领别的去兑换</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://faucet.avax.network/">https://faucet.avax.network/</a></p><h2 id="h-" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">开始做银河任务：</h2><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://galxe.com/Linea/campaign/GCd1YUZyrN">https://galxe.com/Linea/campaign/GCd1YUZyrN</a></p><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">任务一</h3><p>从BSC测试网将BUSD跨链到Linea</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://dev-cbridge-v2.netlify.app/97/59140/BUSD">https://dev-cbridge-v2.netlify.app/97/59140/BUSD</a></p><p>从BSC测试网将BNB跨链到Linea</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://dev-cbridge-v2.netlify.app/97/59140/BNB">https://dev-cbridge-v2.netlify.app/97/59140/BNB</a></p><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">任务二</h3><p>从Polygon Mumbai测试网将MATIC跨链到Linea</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://testnet.bridge.connext.network/MATIC-from-polygon-to-linea?symbol=MATIC">https://testnet.bridge.connext.network/MATIC-from-polygon-to-linea?symbol=MATIC</a></p><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">任务三</h3><p>从Goerli在Hop的Dapp中将 DAI代币跨链到Linea</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://goerli.hop.exchange/#/send?token=DAI&amp;destNetwork=linea&amp;sourceNetwork=ethereum">https://goerli.hop.exchange/#/send?token=DAI&amp;destNetwork=linea&amp;sourceNetwork=ethereum</a></p><p>从Goerli在Hop的Dapp中将 Hop代币跨链到Linea</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://goerli.hop.exchange/#/send?token=HOP&amp;destNetwork=linea&amp;sourceNetwork=ethereum">https://goerli.hop.exchange/#/send?token=HOP&amp;destNetwork=linea&amp;sourceNetwork=ethereum</a></p><p>从Goerli在Hop的Dapp中将 USDC代币跨链到Linea</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://goerli.hop.exchange/#/send?token=USDC&amp;destNetwork=linea&amp;sourceNetwork=ethereum">https://goerli.hop.exchange/#/send?token=USDC&amp;destNetwork=linea&amp;sourceNetwork=ethereum</a></p><p>从Goerli再Hop的Dapp中将 gETH代币跨链到Linea</p><h3 id="h-" class="text-2xl font-header !mt-6 !mb-4 first:!mt-0 first:!mb-0">任务四</h3><p>从Avalanche Fuju Testnet测试网再multichain的Dapp中将EUROEe和TUSD跨链到Linea</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://test.multichain.org/#/router">https://test.multichain.org/#/router</a></p>]]></content:encoded>
            <author>cryptoheng@newsletter.paragraph.com (CryptoHeng)</author>
        </item>
        <item>
            <title><![CDATA[zkSync交互明细]]></title>
            <link>https://paragraph.com/@cryptoheng/zksync</link>
            <guid>CWtIGqNst7mJOuW5ja5Q</guid>
            <pubDate>Wed, 22 Mar 2023 02:03:35 GMT</pubDate>
            <description><![CDATA[zkSync Lite 充值-充值-必做 https://lite.zksync.io/ zkSync era 充值-充值-已作废 https://goerliportal.zksync.io/bridge 测试币领取-领取-必做 <https://faucet.paradigm.xyz/ > 测试币领取-领取-必做 https://goerlifaucet.com/ ZigZag 交易/桥接-必做 https://trade.zigzagex.exchange/ Syncswap 交易-必做 https://staging.syncswap.xyz/ Onchain Trade DEX-建议做 https://beta.onchain.trade/#/trade Mes Protocol-DEX-建议做 https://app.mesprotocol.com/ Mute.Switch 借贷-选做 https://app.muteio/ Nexon DEX-建议做 https://testnet.nexon.finance/ Mint Tevaera lD 兑换-必做 https...]]></description>
            <content:encoded><![CDATA[<p>zkSync Lite 充值-充值-必做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://lite.zksync.io/">https://lite.zksync.io/</a></p><p>zkSync era 充值-充值-已作废</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://goerliportal.zksync.io/bridge">https://goerliportal.zksync.io/bridge</a></p><p>测试币领取-领取-必做</p><p>&lt;<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://faucet.paradigm.xyz/">https://faucet.paradigm.xyz/</a> &gt;</p><p>测试币领取-领取-必做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://goerlifaucet.com/">https://goerlifaucet.com/</a></p><p>ZigZag 交易/桥接-必做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://trade.zigzagex.exchange/">https://trade.zigzagex.exchange/</a></p><p>Syncswap 交易-必做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://staging.syncswap.xyz/">https://staging.syncswap.xyz/</a></p><p>Onchain Trade DEX-建议做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://beta.onchain.trade/#/trade">https://beta.onchain.trade/#/trade</a></p><p>Mes Protocol-DEX-建议做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://app.mesprotocol.com/">https://app.mesprotocol.com/</a></p><p>Mute.Switch 借贷-选做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://app.muteio/">https://app.muteio/</a></p><p>Nexon DEX-建议做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://testnet.nexon.finance/">https://testnet.nexon.finance/</a></p><p>Mint Tevaera lD 兑换-必做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://tevaera.com/">https://tevaera.com/</a></p><p>Orbiter DEX-建议做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.orbiter.finance/?source=Arbitrum&amp;dest=ZKSync">https://www.orbiter.finance/?source=Arbitrum&amp;dest=ZKSync</a></p><p>Argent 钱包注册-跨链桥-必做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.argent.xyz/">https://www.argent.xyz/</a></p><p>Gitcoin 捐款-必做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://bounties.gitcoin.co/grants/4655/chaineye">https://bounties.gitcoin.co/grants/4655/chaineye</a></p><p>Crew3 任务-建议做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://crew3.xyz/c/zksync/questboard">https://crew3.xyz/c/zksync/questboard</a></p><p>Galxe 徽章领取-建议做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://galxe.com/spacefi/campaign/GCsNmUdni5">https://galxe.com/spacefi/campaign/GCsNmUdni5</a></p><p>Mint Square NFT-选做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mintsquare.io/zksync-testnet">https://mintsquare.io/zksync-testnet</a></p><p>CID Mint NFT NFT-选做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://litezksync.io/account/nft">https://litezksync.io/account/nft</a></p><p>ZKSwap 充值 充值-必做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://zksync.zkswap.info/">https://zksync.zkswap.info/</a></p><p>ZKSwap 交易-必做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://zksync.zkswap.info/trade">https://zksync.zkswap.info/trade</a></p><p>ZKSwap 挖矿-建议做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://zksync.zkswap.info/farms">https://zksync.zkswap.info/farms</a></p><p>ZKSwap 意见反馈-建议做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://forms.gle/2Gg5P8hJ6gha6RyU6">https://forms.gle/2Gg5P8hJ6gha6RyU6</a></p><p>ZKRollups 基础知识学习-必做</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.zks.org/learn/zkrollups/what-are-zkrollups">https://docs.zks.org/learn/zkrollups/what-are-zkrollups</a></p>]]></content:encoded>
            <author>cryptoheng@newsletter.paragraph.com (CryptoHeng)</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/0829ffb7dcc8a257ecede05198fcc03e3eef6be72b8a99fc40a8d0810b331e28.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Alchemy Week One Sutdy Noets]]></title>
            <link>https://paragraph.com/@cryptoheng/alchemy-week-one-sutdy-noets</link>
            <guid>WrER5vkOonvFvaKnop3x</guid>
            <pubDate>Wed, 09 Nov 2022 10:27:36 GMT</pubDate>
            <description><![CDATA[BeiJing Time 2022-11-09 18:12 I took the first week course through Alchemy, where I learned how to edit and deploy my first ERC721 NFT smart contract using openzeppelin and remix. I&apos;m an Android App developer with some development foundation, it&apos;s not difficult for me. In the smart contract I developed I not only completed the basic course function of Alchemy, but I also added the following restrictions Here I limited the number of mints to 100,000 The number of NFT cast cannot exce...]]></description>
            <content:encoded><![CDATA[<p>BeiJing Time 2022-11-09 18:12</p><p>I took the first week course through Alchemy, where I learned how to edit and deploy my first ERC721 NFT smart contract using openzeppelin and remix. I&apos;m an Android App developer with some development foundation, it&apos;s not difficult for me. In the smart contract I developed I not only completed the basic course function of Alchemy, but I also added the following restrictions</p><p>Here I limited the number of mints to 100,000</p><p>The number of NFT cast cannot exceed 5</p><p>Wallet Address:0xcac131c219a51abccd597c45a766b1928b17a301</p><p>twitter:</p><p>Opensea:<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://testnets.opensea.io/zh-CN/assets/goerli/0xbbf8917f9ec622d76419918acfadcc91ec92ab74/0">https://testnets.opensea.io/zh-CN/assets/goerli/0xbbf8917f9ec622d76419918acfadcc91ec92ab74/0</a></p><p>Contract create Hash: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://goerli.etherscan.io/tx/0x9dffc62ca46883419fb8bc95190960e8826b82f5fd78307c2cec81fc029ca838">https://goerli.etherscan.io/tx/0x9dffc62ca46883419fb8bc95190960e8826b82f5fd78307c2cec81fc029ca838</a></p><p>Contract Address: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://goerli.etherscan.io/address/0xbbf8917f9ec622d76419918acfadcc91ec92ab74">https://goerli.etherscan.io/address/0xbbf8917f9ec622d76419918acfadcc91ec92ab74</a></p><p>Safe Mint Hash:<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://goerli.etherscan.io/tx/0x535b9b22c4ab504876defdce80daccac66e7bde43551217e1c5fe5bb7d014430">https://goerli.etherscan.io/tx/0x535b9b22c4ab504876defdce80daccac66e7bde43551217e1c5fe5bb7d014430</a></p><pre data-type="codeBlock" text="// SPDX-License-Identifier: MIT
pragma solidity ^0.8.9;

import &quot;@openzeppelin/contracts@4.8.0/token/ERC721/ERC721.sol&quot;;
import &quot;@openzeppelin/contracts@4.8.0/token/ERC721/extensions/ERC721Enumerable.sol&quot;;
import &quot;@openzeppelin/contracts@4.8.0/token/ERC721/extensions/ERC721URIStorage.sol&quot;;
import &quot;@openzeppelin/contracts@4.8.0/access/Ownable.sol&quot;;
import &quot;@openzeppelin/contracts@4.8.0/utils/Counters.sol&quot;;

contract CryptoHeng is ERC721, ERC721Enumerable, ERC721URIStorage, Ownable {
    using Counters for Counters.Counter;

    Counters.Counter private _tokenIdCounter;
    uint256 MAX_SUPPLY = 100000;
    uint32 MAX_NFT_ALLOWED = 5;

    constructor() ERC721(&quot;CryptoHeng&quot;, &quot;CH&quot;) {}
    mapping (address =&gt; uint32) public constructorCustomer;

    function safeMint(address to, string memory uri) public onlyOwner {
        require(_tokenIdCounter.current() &lt;= MAX_SUPPLY,&quot;Sorry we reached the cap&quot;);
        require(constructorCustomer[msg.sender] &lt;= MAX_NFT_ALLOWED,&quot;You can&apos;t mint more than 5 NFT&quot;);
        uint256 tokenId = _tokenIdCounter.current();
        _tokenIdCounter.increment();
        _safeMint(to, tokenId);
        _setTokenURI(tokenId, uri);
        constructorCustomer[msg.sender]++;
    }

    // The following functions are overrides required by Solidity.

    function _beforeTokenTransfer(address from, address to, uint256 tokenId, uint256 batchSize)
        internal
        override(ERC721, ERC721Enumerable)
    {
        super._beforeTokenTransfer(from, to, tokenId, batchSize);
    }

    function _burn(uint256 tokenId) internal override(ERC721, ERC721URIStorage) {
        super._burn(tokenId);
    }

    function tokenURI(uint256 tokenId)
        public
        view
        override(ERC721, ERC721URIStorage)
        returns (string memory)
    {
        return super.tokenURI(tokenId);
    }

    function supportsInterface(bytes4 interfaceId)
        public
        view
        override(ERC721, ERC721Enumerable)
        returns (bool)
    {
        return super.supportsInterface(interfaceId);
    }
}
"><code><span class="hljs-comment">// SPDX-License-Identifier: MIT</span>
<span class="hljs-meta"><span class="hljs-keyword">pragma</span> <span class="hljs-keyword">solidity</span> ^0.8.9;</span>

<span class="hljs-keyword">import</span> <span class="hljs-string">"@openzeppelin/contracts@4.8.0/token/ERC721/ERC721.sol"</span>;
<span class="hljs-keyword">import</span> <span class="hljs-string">"@openzeppelin/contracts@4.8.0/token/ERC721/extensions/ERC721Enumerable.sol"</span>;
<span class="hljs-keyword">import</span> <span class="hljs-string">"@openzeppelin/contracts@4.8.0/token/ERC721/extensions/ERC721URIStorage.sol"</span>;
<span class="hljs-keyword">import</span> <span class="hljs-string">"@openzeppelin/contracts@4.8.0/access/Ownable.sol"</span>;
<span class="hljs-keyword">import</span> <span class="hljs-string">"@openzeppelin/contracts@4.8.0/utils/Counters.sol"</span>;

<span class="hljs-class"><span class="hljs-keyword">contract</span> <span class="hljs-title">CryptoHeng</span> <span class="hljs-keyword">is</span> <span class="hljs-title">ERC721</span>, <span class="hljs-title">ERC721Enumerable</span>, <span class="hljs-title">ERC721URIStorage</span>, <span class="hljs-title">Ownable</span> </span>{
    <span class="hljs-keyword">using</span> <span class="hljs-title">Counters</span> <span class="hljs-title"><span class="hljs-keyword">for</span></span> <span class="hljs-title">Counters</span>.<span class="hljs-title">Counter</span>;

    Counters.Counter <span class="hljs-keyword">private</span> _tokenIdCounter;
    <span class="hljs-keyword">uint256</span> MAX_SUPPLY <span class="hljs-operator">=</span> <span class="hljs-number">100000</span>;
    <span class="hljs-keyword">uint32</span> MAX_NFT_ALLOWED <span class="hljs-operator">=</span> <span class="hljs-number">5</span>;

    <span class="hljs-function"><span class="hljs-keyword">constructor</span>(<span class="hljs-params"></span>) <span class="hljs-title">ERC721</span>(<span class="hljs-params"><span class="hljs-string">"CryptoHeng"</span>, <span class="hljs-string">"CH"</span></span>) </span>{}
    <span class="hljs-keyword">mapping</span> (<span class="hljs-keyword">address</span> <span class="hljs-operator">=</span><span class="hljs-operator">></span> <span class="hljs-keyword">uint32</span>) <span class="hljs-keyword">public</span> constructorCustomer;

    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">safeMint</span>(<span class="hljs-params"><span class="hljs-keyword">address</span> to, <span class="hljs-keyword">string</span> <span class="hljs-keyword">memory</span> uri</span>) <span class="hljs-title"><span class="hljs-keyword">public</span></span> <span class="hljs-title">onlyOwner</span> </span>{
        <span class="hljs-built_in">require</span>(_tokenIdCounter.current() <span class="hljs-operator">&#x3C;</span><span class="hljs-operator">=</span> MAX_SUPPLY,<span class="hljs-string">"Sorry we reached the cap"</span>);
        <span class="hljs-built_in">require</span>(constructorCustomer[<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>] <span class="hljs-operator">&#x3C;</span><span class="hljs-operator">=</span> MAX_NFT_ALLOWED,<span class="hljs-string">"You can't mint more than 5 NFT"</span>);
        <span class="hljs-keyword">uint256</span> tokenId <span class="hljs-operator">=</span> _tokenIdCounter.current();
        _tokenIdCounter.increment();
        _safeMint(to, tokenId);
        _setTokenURI(tokenId, uri);
        constructorCustomer[<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>]<span class="hljs-operator">+</span><span class="hljs-operator">+</span>;
    }

    <span class="hljs-comment">// The following functions are overrides required by Solidity.</span>

    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">_beforeTokenTransfer</span>(<span class="hljs-params"><span class="hljs-keyword">address</span> <span class="hljs-keyword">from</span>, <span class="hljs-keyword">address</span> to, <span class="hljs-keyword">uint256</span> tokenId, <span class="hljs-keyword">uint256</span> batchSize</span>)
        <span class="hljs-title"><span class="hljs-keyword">internal</span></span>
        <span class="hljs-title"><span class="hljs-keyword">override</span></span>(<span class="hljs-params">ERC721, ERC721Enumerable</span>)
    </span>{
        <span class="hljs-built_in">super</span>._beforeTokenTransfer(<span class="hljs-keyword">from</span>, to, tokenId, batchSize);
    }

    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">_burn</span>(<span class="hljs-params"><span class="hljs-keyword">uint256</span> tokenId</span>) <span class="hljs-title"><span class="hljs-keyword">internal</span></span> <span class="hljs-title"><span class="hljs-keyword">override</span></span>(<span class="hljs-params">ERC721, ERC721URIStorage</span>) </span>{
        <span class="hljs-built_in">super</span>._burn(tokenId);
    }

    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">tokenURI</span>(<span class="hljs-params"><span class="hljs-keyword">uint256</span> tokenId</span>)
        <span class="hljs-title"><span class="hljs-keyword">public</span></span>
        <span class="hljs-title"><span class="hljs-keyword">view</span></span>
        <span class="hljs-title"><span class="hljs-keyword">override</span></span>(<span class="hljs-params">ERC721, ERC721URIStorage</span>)
        <span class="hljs-title"><span class="hljs-keyword">returns</span></span> (<span class="hljs-params"><span class="hljs-keyword">string</span> <span class="hljs-keyword">memory</span></span>)
    </span>{
        <span class="hljs-keyword">return</span> <span class="hljs-built_in">super</span>.tokenURI(tokenId);
    }

    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">supportsInterface</span>(<span class="hljs-params"><span class="hljs-keyword">bytes4</span> interfaceId</span>)
        <span class="hljs-title"><span class="hljs-keyword">public</span></span>
        <span class="hljs-title"><span class="hljs-keyword">view</span></span>
        <span class="hljs-title"><span class="hljs-keyword">override</span></span>(<span class="hljs-params">ERC721, ERC721Enumerable</span>)
        <span class="hljs-title"><span class="hljs-keyword">returns</span></span> (<span class="hljs-params"><span class="hljs-keyword">bool</span></span>)
    </span>{
        <span class="hljs-keyword">return</span> <span class="hljs-built_in">super</span>.supportsInterface(interfaceId);
    }
}
</code></pre>]]></content:encoded>
            <author>cryptoheng@newsletter.paragraph.com (CryptoHeng)</author>
        </item>
        <item>
            <title><![CDATA[Solidity学习笔记-公开拍卖合约]]></title>
            <link>https://paragraph.com/@cryptoheng/solidity-2</link>
            <guid>zXoIuJGSMGQPWZLHwwzG</guid>
            <pubDate>Thu, 14 Jul 2022 09:44:39 GMT</pubDate>
            <description><![CDATA[合约部署地址 https://kovan.etherscan.io/address/0x37902afcc4a8990b06c0eabe8c92c07b03a7e916// SPDX-License-Identifier: MIT pragma solidity ^0.8.7; //CryptoHeng公开拍卖合约源码 contract CryptoHengSimpleAuction { //受益人 address payable public beneficiary; //拍卖结束时间 uint public auctionEndTime; //出价最高者地址 address public highestBidder; //出价最高价格 uint256 public highestBid; //地址对应的出价记录映射,用以退款 mapping(address => uint) public pendingReturns; //拍卖是否结束 bool ended; //最高出价变化事件 event HighestBidIncreased(address bidder, uint ...]]></description>
            <content:encoded><![CDATA[<p>合约部署地址</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://kovan.etherscan.io/address/0x37902afcc4a8990b06c0eabe8c92c07b03a7e916">https://kovan.etherscan.io/address/0x37902afcc4a8990b06c0eabe8c92c07b03a7e916</a></p><pre data-type="codeBlock" text="// SPDX-License-Identifier: MIT
pragma solidity ^0.8.7;

//CryptoHeng公开拍卖合约源码
contract CryptoHengSimpleAuction {
    //受益人
    address payable public beneficiary;
    //拍卖结束时间
    uint public auctionEndTime;
    //出价最高者地址
    address public highestBidder;
    //出价最高价格
    uint256 public highestBid;
    //地址对应的出价记录映射,用以退款
    mapping(address =&gt; uint) public pendingReturns;
    //拍卖是否结束
    bool ended;

    //最高出价变化事件
    event HighestBidIncreased(address bidder, uint amount);
    //拍卖结束事件
    event AuctionEnded(address winner, uint amount);

    //错误：拍卖已结束
    error AuctionAlredayEnded();
    //错误：出价不够高
    error BidNotHighEnough(uint highestBid);
    //错误: 拍卖尚未结束
    error AuctionNotYetEnded();
    //错误: 拍卖结束函数已经被执行过
    error AuctionEndAlreadyCalled();

    constructor(uint auctionTime, address payable setBeneficiary){
        auctionEndTime = block.timestamp + auctionTime;
        beneficiary = setBeneficiary;
    }

    //出价
    function bid() external payable {
        //检查拍卖是否结束
        if(block.timestamp &gt; auctionEndTime || ended){
           revert AuctionAlredayEnded();
        }

        //检查出价
        if(msg.value &lt;= highestBid){
            revert BidNotHighEnough(highestBid);
        }

        highestBid = msg.value;
        highestBidder = msg.sender;
        
        //出价只要大于0且是最高价格，就记录到待返回中竞拍失败后返回给用户
        if(highestBid &gt; 0){
            pendingReturns[msg.sender] += highestBid;
        }
        
        //发送最高出价变化事件
        emit HighestBidIncreased(msg.sender, msg.value);
    }

    /// 撤销出价过高的出价。
    function withdraw() external returns (bool){
        uint amount = pendingReturns[msg.sender];
        if(amount &gt; 0){
            if(msg.sender == highestBidder){
                //当前提款人为最高出价者，将锁定最高出价，只退还之前作废的出价，防止恶意出价，再提取的非法操作
                pendingReturns[msg.sender] = highestBid;
                amount -= highestBid;
            }else{
                pendingReturns[msg.sender] = 0;
            }
        }

        if(!payable(msg.sender).send(amount)){
            pendingReturns[msg.sender] = amount;
            return false;
        }
        return true;
    }

    ///拍卖结束
    function auctionEnd() external {
        if (block.timestamp &lt; auctionEndTime){
            revert AuctionNotYetEnded();
        }
            
        if (ended){
            revert AuctionEndAlreadyCalled();
        }

        ended = true;
        emit AuctionEnded(highestBidder, highestBid);
        beneficiary.transfer(highestBid);
    }


}
"><code><span class="hljs-comment">// SPDX-License-Identifier: MIT</span>
<span class="hljs-meta"><span class="hljs-keyword">pragma</span> <span class="hljs-keyword">solidity</span> ^0.8.7;</span>

<span class="hljs-comment">//CryptoHeng公开拍卖合约源码</span>
<span class="hljs-class"><span class="hljs-keyword">contract</span> <span class="hljs-title">CryptoHengSimpleAuction</span> </span>{
    <span class="hljs-comment">//受益人</span>
    <span class="hljs-keyword">address</span> <span class="hljs-keyword">payable</span> <span class="hljs-keyword">public</span> beneficiary;
    <span class="hljs-comment">//拍卖结束时间</span>
    <span class="hljs-keyword">uint</span> <span class="hljs-keyword">public</span> auctionEndTime;
    <span class="hljs-comment">//出价最高者地址</span>
    <span class="hljs-keyword">address</span> <span class="hljs-keyword">public</span> highestBidder;
    <span class="hljs-comment">//出价最高价格</span>
    <span class="hljs-keyword">uint256</span> <span class="hljs-keyword">public</span> highestBid;
    <span class="hljs-comment">//地址对应的出价记录映射,用以退款</span>
    <span class="hljs-keyword">mapping</span>(<span class="hljs-keyword">address</span> <span class="hljs-operator">=</span><span class="hljs-operator">></span> <span class="hljs-keyword">uint</span>) <span class="hljs-keyword">public</span> pendingReturns;
    <span class="hljs-comment">//拍卖是否结束</span>
    <span class="hljs-keyword">bool</span> ended;

    <span class="hljs-comment">//最高出价变化事件</span>
    <span class="hljs-function"><span class="hljs-keyword">event</span> <span class="hljs-title">HighestBidIncreased</span>(<span class="hljs-params"><span class="hljs-keyword">address</span> bidder, <span class="hljs-keyword">uint</span> amount</span>)</span>;
    <span class="hljs-comment">//拍卖结束事件</span>
    <span class="hljs-function"><span class="hljs-keyword">event</span> <span class="hljs-title">AuctionEnded</span>(<span class="hljs-params"><span class="hljs-keyword">address</span> winner, <span class="hljs-keyword">uint</span> amount</span>)</span>;

    <span class="hljs-comment">//错误：拍卖已结束</span>
    <span class="hljs-function"><span class="hljs-keyword">error</span> <span class="hljs-title">AuctionAlredayEnded</span>(<span class="hljs-params"></span>)</span>;
    <span class="hljs-comment">//错误：出价不够高</span>
    <span class="hljs-function"><span class="hljs-keyword">error</span> <span class="hljs-title">BidNotHighEnough</span>(<span class="hljs-params"><span class="hljs-keyword">uint</span> highestBid</span>)</span>;
    <span class="hljs-comment">//错误: 拍卖尚未结束</span>
    <span class="hljs-function"><span class="hljs-keyword">error</span> <span class="hljs-title">AuctionNotYetEnded</span>(<span class="hljs-params"></span>)</span>;
    <span class="hljs-comment">//错误: 拍卖结束函数已经被执行过</span>
    <span class="hljs-function"><span class="hljs-keyword">error</span> <span class="hljs-title">AuctionEndAlreadyCalled</span>(<span class="hljs-params"></span>)</span>;

    <span class="hljs-function"><span class="hljs-keyword">constructor</span>(<span class="hljs-params"><span class="hljs-keyword">uint</span> auctionTime, <span class="hljs-keyword">address</span> <span class="hljs-keyword">payable</span> setBeneficiary</span>)</span>{
        auctionEndTime <span class="hljs-operator">=</span> <span class="hljs-built_in">block</span>.<span class="hljs-built_in">timestamp</span> <span class="hljs-operator">+</span> auctionTime;
        beneficiary <span class="hljs-operator">=</span> setBeneficiary;
    }

    <span class="hljs-comment">//出价</span>
    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">bid</span>(<span class="hljs-params"></span>) <span class="hljs-title"><span class="hljs-keyword">external</span></span> <span class="hljs-title"><span class="hljs-keyword">payable</span></span> </span>{
        <span class="hljs-comment">//检查拍卖是否结束</span>
        <span class="hljs-keyword">if</span>(<span class="hljs-built_in">block</span>.<span class="hljs-built_in">timestamp</span> <span class="hljs-operator">></span> auctionEndTime <span class="hljs-operator">|</span><span class="hljs-operator">|</span> ended){
           <span class="hljs-keyword">revert</span> AuctionAlredayEnded();
        }

        <span class="hljs-comment">//检查出价</span>
        <span class="hljs-keyword">if</span>(<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">value</span> <span class="hljs-operator">&#x3C;</span><span class="hljs-operator">=</span> highestBid){
            <span class="hljs-keyword">revert</span> BidNotHighEnough(highestBid);
        }

        highestBid <span class="hljs-operator">=</span> <span class="hljs-built_in">msg</span>.<span class="hljs-built_in">value</span>;
        highestBidder <span class="hljs-operator">=</span> <span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>;
        
        <span class="hljs-comment">//出价只要大于0且是最高价格，就记录到待返回中竞拍失败后返回给用户</span>
        <span class="hljs-keyword">if</span>(highestBid <span class="hljs-operator">></span> <span class="hljs-number">0</span>){
            pendingReturns[<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>] <span class="hljs-operator">+</span><span class="hljs-operator">=</span> highestBid;
        }
        
        <span class="hljs-comment">//发送最高出价变化事件</span>
        <span class="hljs-keyword">emit</span> HighestBidIncreased(<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>, <span class="hljs-built_in">msg</span>.<span class="hljs-built_in">value</span>);
    }

    <span class="hljs-comment">/// 撤销出价过高的出价。</span>
    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">withdraw</span>(<span class="hljs-params"></span>) <span class="hljs-title"><span class="hljs-keyword">external</span></span> <span class="hljs-title"><span class="hljs-keyword">returns</span></span> (<span class="hljs-params"><span class="hljs-keyword">bool</span></span>)</span>{
        <span class="hljs-keyword">uint</span> amount <span class="hljs-operator">=</span> pendingReturns[<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>];
        <span class="hljs-keyword">if</span>(amount <span class="hljs-operator">></span> <span class="hljs-number">0</span>){
            <span class="hljs-keyword">if</span>(<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span> <span class="hljs-operator">=</span><span class="hljs-operator">=</span> highestBidder){
                <span class="hljs-comment">//当前提款人为最高出价者，将锁定最高出价，只退还之前作废的出价，防止恶意出价，再提取的非法操作</span>
                pendingReturns[<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>] <span class="hljs-operator">=</span> highestBid;
                amount <span class="hljs-operator">-</span><span class="hljs-operator">=</span> highestBid;
            }<span class="hljs-keyword">else</span>{
                pendingReturns[<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>] <span class="hljs-operator">=</span> <span class="hljs-number">0</span>;
            }
        }

        <span class="hljs-keyword">if</span>(<span class="hljs-operator">!</span><span class="hljs-keyword">payable</span>(<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>).<span class="hljs-built_in">send</span>(amount)){
            pendingReturns[<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>] <span class="hljs-operator">=</span> amount;
            <span class="hljs-keyword">return</span> <span class="hljs-literal">false</span>;
        }
        <span class="hljs-keyword">return</span> <span class="hljs-literal">true</span>;
    }

    <span class="hljs-comment">///拍卖结束</span>
    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">auctionEnd</span>(<span class="hljs-params"></span>) <span class="hljs-title"><span class="hljs-keyword">external</span></span> </span>{
        <span class="hljs-keyword">if</span> (<span class="hljs-built_in">block</span>.<span class="hljs-built_in">timestamp</span> <span class="hljs-operator">&#x3C;</span> auctionEndTime){
            <span class="hljs-keyword">revert</span> AuctionNotYetEnded();
        }
            
        <span class="hljs-keyword">if</span> (ended){
            <span class="hljs-keyword">revert</span> AuctionEndAlreadyCalled();
        }

        ended <span class="hljs-operator">=</span> <span class="hljs-literal">true</span>;
        <span class="hljs-keyword">emit</span> AuctionEnded(highestBidder, highestBid);
        beneficiary.<span class="hljs-built_in">transfer</span>(highestBid);
    }


}
</code></pre>]]></content:encoded>
            <author>cryptoheng@newsletter.paragraph.com (CryptoHeng)</author>
        </item>
        <item>
            <title><![CDATA[Solidity学习笔记-投票合约]]></title>
            <link>https://paragraph.com/@cryptoheng/solidity</link>
            <guid>g0etYcbnli3NrPlMiobV</guid>
            <pubDate>Wed, 13 Jul 2022 14:25:33 GMT</pubDate>
            <description><![CDATA[// SPDX-License-Identifier: MIT pragma solidity ^0.8.7; contract CryptoHengBallot { ///投票人 struct Voter{ uint weight; //投票权重 bool voted; //是否已经投过票 true为已投票 address delegate; //代理投票地址 uint vote; //投票的提案索引 } ///提案 struct Proposal{ string name; //提案名称 uint voteCount; //提案所得票数 } //主席 address public chairperson; //地址投票人映射关系 mapping (address => Voter) public voters; //提案数组集合 Proposal[] public proposals; //构造函数传入提案名称集合 constructor(string[] memory proposalNames){ chairperson = msg.sender; voters[chai...]]></description>
            <content:encoded><![CDATA[<pre data-type="codeBlock" text="// SPDX-License-Identifier: MIT
pragma solidity ^0.8.7;

contract CryptoHengBallot {
    ///投票人
    struct Voter{
        uint weight; //投票权重
        bool voted; //是否已经投过票 true为已投票
        address delegate; //代理投票地址
        uint vote; //投票的提案索引
    }

    ///提案
    struct Proposal{
        string name; //提案名称
        uint voteCount; //提案所得票数
    }

    //主席
    address public chairperson;
    //地址投票人映射关系
    mapping (address =&gt; Voter) public voters;
    //提案数组集合
    Proposal[] public proposals;
    
    //构造函数传入提案名称集合
    constructor(string[] memory proposalNames){
        chairperson = msg.sender;
        voters[chairperson].weight = 1;

        for(uint i = 0; i &lt; proposalNames.length; i++){
            proposals.push(Proposal({name: proposalNames[i], voteCount: 0}));
        }
    }

    //给予投票权利
    function giveRightToVote(address voter) external view {
        require(msg.sender == chairperson, &quot;Only chairperson arrow give right to vote&quot;);
        require(voter != address(0), &quot;invalid address&quot;);
        require(!voters[voter].voted, &quot;The voter already voted.&quot;);
        require(voters[voter].weight == 0);
        voters[voter].weight == 1;
    }

    //委托代理
    function delegate(address to) external {
        require(to != address(0));  //防止委托给0地址
        require(msg.sender != to, &quot;You can&apos;t delegate yourself&quot;);
        Voter storage sender = voters[msg.sender];
        require(!sender.voted, &quot;You are already voted.&quot;);
        require(sender.weight != 0, &quot;You have no right to vote&quot;);
        while(voters[to].delegate != address(0)){
            //A委托了B，B委托了C时需要循环交给最后一个委托人
            to = voters[to].delegate;
            //当A委托了B，B的委托人为A时会出现死循环所以to 的委托人不能为 msg.sender
            require(to != msg.sender, &quot;Found loop in delegation.&quot;);
        }

        Voter storage delegate_ = voters[to];

        require(delegate_.weight &gt;= 1);
        
        if(delegate_.voted){
            //如果受委托人已经投过票，将票数直接加到他投票的提按中
            proposals[delegate_.vote].voteCount += sender.weight;
        }else{
            delegate_.weight += sender.weight;
        }

    }

    //投票
    function vote(uint proposalsIndex) external {
        Voter storage voter = voters[msg.sender];
        require(!voter.voted, &quot;You already voted.&quot;);
        require(voter.weight &gt; 0, &quot;You don&apos;t get a vote&quot;);
        voter.voted = true;
        voter.vote = proposalsIndex;
        proposals[proposalsIndex].voteCount += voter.weight;
    }

    //获取投票获胜提案索引
    function winnerProposalIndex() public view returns (uint proposalsIndex) {
        uint maxCount;
        for(uint i = 0; i &lt; proposals.length; i++) {
            if( proposals[i].voteCount &gt; maxCount){
                maxCount = proposals[i].voteCount;
                proposalsIndex = i;
            }  
        }
    }

    //获取投票获胜提案名称
    function winnerProposalName() external view returns (string memory winnerName_) {
        winnerName_ =  proposals[winnerProposalIndex()].name;
    }
}
"><code><span class="hljs-comment">// SPDX-License-Identifier: MIT</span>
<span class="hljs-meta"><span class="hljs-keyword">pragma</span> <span class="hljs-keyword">solidity</span> ^0.8.7;</span>

<span class="hljs-class"><span class="hljs-keyword">contract</span> <span class="hljs-title">CryptoHengBallot</span> </span>{
    <span class="hljs-comment">///投票人</span>
    <span class="hljs-keyword">struct</span> <span class="hljs-title">Voter</span>{
        <span class="hljs-keyword">uint</span> weight; <span class="hljs-comment">//投票权重</span>
        <span class="hljs-keyword">bool</span> voted; <span class="hljs-comment">//是否已经投过票 true为已投票</span>
        <span class="hljs-keyword">address</span> delegate; <span class="hljs-comment">//代理投票地址</span>
        <span class="hljs-keyword">uint</span> vote; <span class="hljs-comment">//投票的提案索引</span>
    }

    <span class="hljs-comment">///提案</span>
    <span class="hljs-keyword">struct</span> <span class="hljs-title">Proposal</span>{
        <span class="hljs-keyword">string</span> name; <span class="hljs-comment">//提案名称</span>
        <span class="hljs-keyword">uint</span> voteCount; <span class="hljs-comment">//提案所得票数</span>
    }

    <span class="hljs-comment">//主席</span>
    <span class="hljs-keyword">address</span> <span class="hljs-keyword">public</span> chairperson;
    <span class="hljs-comment">//地址投票人映射关系</span>
    <span class="hljs-keyword">mapping</span> (<span class="hljs-keyword">address</span> <span class="hljs-operator">=</span><span class="hljs-operator">></span> Voter) <span class="hljs-keyword">public</span> voters;
    <span class="hljs-comment">//提案数组集合</span>
    Proposal[] <span class="hljs-keyword">public</span> proposals;
    
    <span class="hljs-comment">//构造函数传入提案名称集合</span>
    <span class="hljs-function"><span class="hljs-keyword">constructor</span>(<span class="hljs-params"><span class="hljs-keyword">string</span>[] <span class="hljs-keyword">memory</span> proposalNames</span>)</span>{
        chairperson <span class="hljs-operator">=</span> <span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>;
        voters[chairperson].weight <span class="hljs-operator">=</span> <span class="hljs-number">1</span>;

        <span class="hljs-keyword">for</span>(<span class="hljs-keyword">uint</span> i <span class="hljs-operator">=</span> <span class="hljs-number">0</span>; i <span class="hljs-operator">&#x3C;</span> proposalNames.<span class="hljs-built_in">length</span>; i<span class="hljs-operator">+</span><span class="hljs-operator">+</span>){
            proposals.<span class="hljs-built_in">push</span>(Proposal({name: proposalNames[i], voteCount: <span class="hljs-number">0</span>}));
        }
    }

    <span class="hljs-comment">//给予投票权利</span>
    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">giveRightToVote</span>(<span class="hljs-params"><span class="hljs-keyword">address</span> voter</span>) <span class="hljs-title"><span class="hljs-keyword">external</span></span> <span class="hljs-title"><span class="hljs-keyword">view</span></span> </span>{
        <span class="hljs-built_in">require</span>(<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span> <span class="hljs-operator">=</span><span class="hljs-operator">=</span> chairperson, <span class="hljs-string">"Only chairperson arrow give right to vote"</span>);
        <span class="hljs-built_in">require</span>(voter <span class="hljs-operator">!</span><span class="hljs-operator">=</span> <span class="hljs-keyword">address</span>(<span class="hljs-number">0</span>), <span class="hljs-string">"invalid address"</span>);
        <span class="hljs-built_in">require</span>(<span class="hljs-operator">!</span>voters[voter].voted, <span class="hljs-string">"The voter already voted."</span>);
        <span class="hljs-built_in">require</span>(voters[voter].weight <span class="hljs-operator">=</span><span class="hljs-operator">=</span> <span class="hljs-number">0</span>);
        voters[voter].weight <span class="hljs-operator">=</span><span class="hljs-operator">=</span> <span class="hljs-number">1</span>;
    }

    <span class="hljs-comment">//委托代理</span>
    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">delegate</span>(<span class="hljs-params"><span class="hljs-keyword">address</span> to</span>) <span class="hljs-title"><span class="hljs-keyword">external</span></span> </span>{
        <span class="hljs-built_in">require</span>(to <span class="hljs-operator">!</span><span class="hljs-operator">=</span> <span class="hljs-keyword">address</span>(<span class="hljs-number">0</span>));  <span class="hljs-comment">//防止委托给0地址</span>
        <span class="hljs-built_in">require</span>(<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span> <span class="hljs-operator">!</span><span class="hljs-operator">=</span> to, <span class="hljs-string">"You can't delegate yourself"</span>);
        Voter <span class="hljs-keyword">storage</span> sender <span class="hljs-operator">=</span> voters[<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>];
        <span class="hljs-built_in">require</span>(<span class="hljs-operator">!</span>sender.voted, <span class="hljs-string">"You are already voted."</span>);
        <span class="hljs-built_in">require</span>(sender.weight <span class="hljs-operator">!</span><span class="hljs-operator">=</span> <span class="hljs-number">0</span>, <span class="hljs-string">"You have no right to vote"</span>);
        <span class="hljs-keyword">while</span>(voters[to].delegate <span class="hljs-operator">!</span><span class="hljs-operator">=</span> <span class="hljs-keyword">address</span>(<span class="hljs-number">0</span>)){
            <span class="hljs-comment">//A委托了B，B委托了C时需要循环交给最后一个委托人</span>
            to <span class="hljs-operator">=</span> voters[to].delegate;
            <span class="hljs-comment">//当A委托了B，B的委托人为A时会出现死循环所以to 的委托人不能为 msg.sender</span>
            <span class="hljs-built_in">require</span>(to <span class="hljs-operator">!</span><span class="hljs-operator">=</span> <span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>, <span class="hljs-string">"Found loop in delegation."</span>);
        }

        Voter <span class="hljs-keyword">storage</span> delegate_ <span class="hljs-operator">=</span> voters[to];

        <span class="hljs-built_in">require</span>(delegate_.weight <span class="hljs-operator">></span><span class="hljs-operator">=</span> <span class="hljs-number">1</span>);
        
        <span class="hljs-keyword">if</span>(delegate_.voted){
            <span class="hljs-comment">//如果受委托人已经投过票，将票数直接加到他投票的提按中</span>
            proposals[delegate_.vote].voteCount <span class="hljs-operator">+</span><span class="hljs-operator">=</span> sender.weight;
        }<span class="hljs-keyword">else</span>{
            delegate_.weight <span class="hljs-operator">+</span><span class="hljs-operator">=</span> sender.weight;
        }

    }

    <span class="hljs-comment">//投票</span>
    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">vote</span>(<span class="hljs-params"><span class="hljs-keyword">uint</span> proposalsIndex</span>) <span class="hljs-title"><span class="hljs-keyword">external</span></span> </span>{
        Voter <span class="hljs-keyword">storage</span> voter <span class="hljs-operator">=</span> voters[<span class="hljs-built_in">msg</span>.<span class="hljs-built_in">sender</span>];
        <span class="hljs-built_in">require</span>(<span class="hljs-operator">!</span>voter.voted, <span class="hljs-string">"You already voted."</span>);
        <span class="hljs-built_in">require</span>(voter.weight <span class="hljs-operator">></span> <span class="hljs-number">0</span>, <span class="hljs-string">"You don't get a vote"</span>);
        voter.voted <span class="hljs-operator">=</span> <span class="hljs-literal">true</span>;
        voter.vote <span class="hljs-operator">=</span> proposalsIndex;
        proposals[proposalsIndex].voteCount <span class="hljs-operator">+</span><span class="hljs-operator">=</span> voter.weight;
    }

    <span class="hljs-comment">//获取投票获胜提案索引</span>
    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">winnerProposalIndex</span>(<span class="hljs-params"></span>) <span class="hljs-title"><span class="hljs-keyword">public</span></span> <span class="hljs-title"><span class="hljs-keyword">view</span></span> <span class="hljs-title"><span class="hljs-keyword">returns</span></span> (<span class="hljs-params"><span class="hljs-keyword">uint</span> proposalsIndex</span>) </span>{
        <span class="hljs-keyword">uint</span> maxCount;
        <span class="hljs-keyword">for</span>(<span class="hljs-keyword">uint</span> i <span class="hljs-operator">=</span> <span class="hljs-number">0</span>; i <span class="hljs-operator">&#x3C;</span> proposals.<span class="hljs-built_in">length</span>; i<span class="hljs-operator">+</span><span class="hljs-operator">+</span>) {
            <span class="hljs-keyword">if</span>( proposals[i].voteCount <span class="hljs-operator">></span> maxCount){
                maxCount <span class="hljs-operator">=</span> proposals[i].voteCount;
                proposalsIndex <span class="hljs-operator">=</span> i;
            }  
        }
    }

    <span class="hljs-comment">//获取投票获胜提案名称</span>
    <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">winnerProposalName</span>(<span class="hljs-params"></span>) <span class="hljs-title"><span class="hljs-keyword">external</span></span> <span class="hljs-title"><span class="hljs-keyword">view</span></span> <span class="hljs-title"><span class="hljs-keyword">returns</span></span> (<span class="hljs-params"><span class="hljs-keyword">string</span> <span class="hljs-keyword">memory</span> winnerName_</span>) </span>{
        winnerName_ <span class="hljs-operator">=</span>  proposals[winnerProposalIndex()].<span class="hljs-built_in">name</span>;
    }
}
</code></pre>]]></content:encoded>
            <author>cryptoheng@newsletter.paragraph.com (CryptoHeng)</author>
        </item>
    </channel>
</rss>