<?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>MM</title>
        <link>https://paragraph.com/@mm-10</link>
        <description>undefined</description>
        <lastBuildDate>Tue, 11 Aug 2026 16:35:01 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <image>
            <title>MM</title>
            <url>https://storage.googleapis.com/papyrus_images/d0c113723a798b6cff21017104fff9eee404ed2fe9da1d3005a4ee74e39ad3ae.jpg</url>
            <link>https://paragraph.com/@mm-10</link>
        </image>
        <copyright>All rights reserved</copyright>
        <item>
            <title><![CDATA[zkSync Assets & Balances]]></title>
            <link>https://paragraph.com/@mm-10/zksync-assets-balances</link>
            <guid>4SbUJR8ScunexoYJGpzP</guid>
            <pubDate>Wed, 16 Oct 2024 11:06:18 GMT</pubDate>
            <description><![CDATA[In this article, let’s take a look at how zkSync is currently holding the assets. How they are represented on L1 and on L2(s) - as there are more chains in the zk chain ecosystem now. When you ‘deposit’ assets into L2, the original asset on L1 is getting ‘locked’ in the bridge contract, and you receive a ‘wrapped’ asset on L2 chain. When you ‘withdraw’ the process goes in opposite direction - you ‘burn’ your wrapped asset on L2, and this gives you the possibility to ‘claim’/’transfer’ the ori...]]></description>
            <content:encoded><![CDATA[<p>In this article, let’s take a look at how zkSync is currently holding the assets. How they are represented on L1 and on L2(s) - as there are more chains in the zk chain ecosystem now.</p><p>When you ‘deposit’ assets into L2, the original asset on L1 is getting ‘locked’ in the bridge contract, and you receive a ‘wrapped’ asset on L2 chain.</p><p>When you ‘withdraw’ the process goes in opposite direction - you ‘burn’ your wrapped asset on L2, and this gives you the possibility to ‘claim’/’transfer’ the original asset on L1.</p><h2 id="h-single-token-on-era-only" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Single Token on Era only</h2><p>First, let’s find the bridge address on L1 for Era ecosystem: It is <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://etherscan.io/address/0xD7f9f54194C633F36CCD5F3da84ad4a1c38cB2cB"><strong>0xD7f9f54194C633F36CCD5F3da84ad4a1c38cB2cB</strong></a><br>You can find this and other addresses in the documentation:</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.zksync.io/build/developer-reference/addresses/zk-chain-addresses">https://docs.zksync.io/build/developer-reference/addresses/zk-chain-addresses</a></p><p>We can clearly see that it is holding ETH and some other ERC20 tokens.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/d3118ffd2ddd2950b45b723727ee9733649332e0301c5fbf279a40b8d9a5d91c.png" alt="Current holdings of the L1 bridge" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Current holdings of the L1 bridge</figcaption></figure><p>Let’s look at the random token - for example IDO. Here we can see that there are 47.9M tokens ‘locked’ into this bridge contract on L1.</p><p>Let’s see how many are ‘minted’ on Era. Let’s start with list of tokens in zkSync explorer (<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://explorer.zksync.io/tokens">explorer.zksync.io/tokens</a>). There we can check IDO token address on L2 ( <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://explorer.zksync.io/address/0xDea6d5161978d36b5C0FA6a491faA754f4BC809C">0xDea6d5161978d36b5C0FA6a491faA754f4BC809C</a>):</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/041ccd123d152f3ff6b59b627e75aaf6e986829e95a915a5c23922f277352362.png" alt="Address of IDO token" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Address of IDO token</figcaption></figure><p>To see the total amount of tokens minted on L2, we have to query the contract itself:</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/955384bfbca32c62ed51f34fc6c241528707d9eeab8043fd2e248c569f39fb17.png" alt="Click &apos;Read as Proxy&apos;" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Click &apos;Read as Proxy&apos;</figcaption></figure><p>And we can verify that the total supply is 47.9M (the number below is large, as you have to divide it by 10^18 decimals)</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/5780377ce2f7a3fe2e49da65807b13ef631c7542beba0507d7b1e5033bb8bc8b.png" alt="Total supply of the token" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Total supply of the token</figcaption></figure><h2 id="h-tokens-in-the-ecosystem" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Tokens in the ecosystem</h2><p>I’ve mentioned at the beginning of the article, that there are more networks in the ecosystem - and the L1 bridge hold the assets for all of them - and it also knows how much each network has.</p><p>For this, let’s go back to the L1 bridge contract, and query it:</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/0393d0595327366de113e833fa7777f0a56302991536cf12d9df678540a9a46d.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>But this time, we’ll querying chainBalance method:</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/7007318126a9219dbdedd4a51d74e7283eb33b5c4bce481754a1ff9ee7054d52.png" alt="Chain balance" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Chain balance</figcaption></figure><p>For this part, let’s look at the CRONOS L1 token (0xa0b73e1ff0b80914ab6fe0444e65848c4c34450b) and see its balance on Cronos chain (chain id 388) and on Era (chain id 324). You can find chain id on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://chainlist.org/chain/388">chainlist.org</a> page.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/83dcb871e8e1aa986fd942223f6afc0283d51085791482a291f049f119b874fa.png" alt="Amount of CRO tokens locked on L1 that belong to zkSyncEra chain" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Amount of CRO tokens locked on L1 that belong to zkSyncEra chain</figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/906fa60ad2f74e38aafd1dfb6f4409a1b464779a9e20b1e31ade4dbf0a034472.png" alt="Amount of CRO tokens locked on L1 that belong to zkCronos chain." blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">Amount of CRO tokens locked on L1 that belong to zkCronos chain.</figcaption></figure><p>And now you can repeat the experiment from above, and go to Cronos explorer to verify that the amount of CRO tokens minted there is matching the value above.</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://explorer.zkevm.cronos.org/token/0xbcaa34ff9d5bfd0d948b18cf6bf39a882f4a1cbd#code">explorer.zkevm.cronos.org/token/0xbcaa34ff9d5bfd0d948b18cf6bf39a882f4a1cbd#code</a></p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://storage.googleapis.com/papyrus_images/201e2351d3c99b1152e2d87337747694852879bd45b7134d5d0a783dab0da19e.png" alt="CRO token balance on zkCronos chain" blurdataurl="data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=" nextheight="600" nextwidth="800" class="image-node embed"><figcaption HTMLAttributes="[object Object]" class="">CRO token balance on zkCronos chain</figcaption></figure><p>If you look carefully, you can see that the supply can differ a little - this is mostly due to deposits and withdrawals that are ‘in flight’. But the balance on L1, must be <strong>always</strong> greater than the one on L2 (otherwise it would mean that L2 minted some additional tokens without having their equivalent locked in L1).</p><h2 id="h-homework" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0">Homework</h2><p>Try doing the experiment above for other tokens - for example WBTC.</p>]]></content:encoded>
            <author>mm-10@newsletter.paragraph.com (MM)</author>
            <enclosure url="https://storage.googleapis.com/papyrus_images/d3f0c97562701375ca052eac1ac1831cf47dd5eafe2c621ba6526ef487cb2e41.png" length="0" type="image/png"/>
        </item>
    </channel>
</rss>