### Dataset Structure
The competition includes:
- **20 Public Problems** (visible during the competition)
- **30 Private Problems** (included in final scoring)

Each problem comes with multiple test cases that will be used to verify the correctness of your generated Circom code.

### Evaluation Method
Your submitted model will be evaluated against all 50 problems:
0. Your notebook should pass the input public_dataset.json and private_dataset.json into your model
1. For each problem, your model must generate valid Circom code
2. The generated code will be compiled using Circom
3. The compiled code will be tested against multiple test cases
4. A problem is considered solved only if your code passes ALL test cases for that problem
5. Your final score is the total number of correctly solved problems (maximum: 50 problems)
6. This score will later be scaled accordingly in the Silicon Maze leaderboard

---

You are free to use any approach that can run on Kaggle environment : )
- Your notebook should not require internet access during evaluation.
- You can upload everything required as datasets / models on kaggle and import it into your notebook
- You can submit the notebooks multiple times, as you improve your submission over time
- Finetuning, which base model to use, which parameters to use etc. are all up to you. 

