This solution contains 3 Projects.
FuncSignatureGenerator
Contracts
Manifold.Console
and a scripts folder for python scripts.
All code was created from scratch during the Manifold MEV bounty. More info about it can be found here and a blog post about my participation can be found here.
The FuncSignatureGenerator is a small console app to create a 4-bytes function signature starting with zeros. Change length and startText in Program.cs and run:
dotnet run
It would create something like:
Found 0006dd0f: smoothgranny_jvueywnmhk(uint256) in 00:00:00.0143300
Now you can use the function 'smoothgranny_jvueywnmhk(uint256)' in your solidity contract and save some gas.
This program monitors the mempool, cq. listens for pending transactions and writes them in a channel. The sandwichrunners will pick them up and tries to front- and back run the transactions.
Manifold Console
In docker_instructions you can find out how to run these applications in docker on linux machines.
This project contains the solidity files and generated code. Open the project in VS code and use the solidity plugin to generate your C# code. Now the deployed contracts can be consumed by the manifold console.