# Pickle Polygon Minting **UPDATE: MINICHEFV2 DEPLOYED AT** [0x20b2a3fc7b13ca0ccf7af81a68a14cb3116e8749](https://polygonscan.com/address/0x20b2a3fc7b13ca0ccf7af81a68a14cb3116e8749) **Rewarder** deployed at [0xE28287544005094be096301E5eE6E2A6E6Ef5749](https://polygonscan.com/address/0xE28287544005094be096301E5eE6E2A6E6Ef5749) ## Hypothesis #1: Pickles are somehow minted on mainnet because they can be bridged back (thus satisfying Polygon's requirements) - Anon bridges 2 PICKLEs from Polygon to mainnet: https://etherscan.io/tx/0x85d3c3d174c24f7ca40b416028771dff8dd8752531e033694a73a15e4755a3a4 - The PICKLEs are sent from the bridge instead of being minted https://etherscan.io/address/0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf - The bridge holds approximately the same amoune of circulating PICKLE on Polygon ![](https://i.imgur.com/zlOGS35.png) ![](https://i.imgur.com/FKAxGW2.png) - **Result:** null hypothesis rejected. PICKLEs are not minted on mainnet, and liquidity bridge supply determines PICKLE Polygon supply ## Now why is Sushi able to mint? - Sushi's mainnet [token contract](https://etherscan.io/address/0x6b3595068778dd592e39a122f4f5a5cf09c90fe2#code) has not granted the required minting privileges to `MintableAssetProxy` as stipulated by Polygon's docs [here](https://docs.matic.network/docs/develop/ethereum-matic/mintable-assets/) - Like Pickle's Sushi's contract only allows for their `Masterchef` to mint ### Sushi's Polygon Contract - Sushi's contract on Polygon is found [here](https://polygonscan.com/address/0x0b3f868e0be5597d5db7feb59e1cadbb0fdda50a#code), where the implementation contract (because the main Sushi contract is a proxy) is at https://polygonscan.com/address/0x070e7d3151c89ed13893c84baae0a3f7fdb1e2e6#code - Pickle's current Polygon implementation contract is actually identical to Sushi's (without minting privileges) https://polygonscan.com/address/0x7d7f611abbbb52b2e1df2dc69187c5e846ce80df#code ### Test Sushi Minting - Deposited some DAI/USDC in Sushi's farm and harvested: https://polygonscan.com/tx/0x2098179dd1652e65bf201291396529972c0225dbacd1003bf045e22507616bbb - **SUSHI comes from** https://polygonscan.com/address/0x0769fd68dfb93167989c6f7254cd0d766fb2841f#code - This contract is **Minichefv2**, which is essentially Masterchefv2 - Masterchefv2 presupposes that there is a reward balance in the contract (in this case, SUSHI tokens) - Indeed, [this transaction](https://polygonscan.com/tx/0xa06a29ea5ce84b0c6d67efc50bd9cfb350a1a0d4e10b85b75e740f24e17aae45) shows the Sushi multi-sig sending 53,100 SUSHI to Minichefv2 to power its emissions - Sushi's total supply on Polygon corresponds with the eth-side bridge liqudity ![](https://i.imgur.com/AccHipQ.png) ## Conclusion - The original approach to use the standard masterchef minting contract on Polygon was incorrect. - This should have been caught by Philippe when he was investigating/developing the implementation contract (which we really don't need to change for this approach, meaning the Polygon team is correct with their assertions) ### Next Steps 1. Deploy our own Masterchefv2, forked from Sushi's 2. Pump MCv2 with PICKLEs and set the `picklePerSecond` parameter 3. Add pools and TEST 4. Ideally, we deploy a rewarder contract which rewards MATIC rewards alongside PICKLEs (to negotiate). Production rewarder contractfor Sushi is found [here](https://polygonscan.com/address/0xa3378Ca78633B3b9b2255EAa26748770211163AE)