In the integrated toolbox called ZoKrates [1], a model was proposed in which a smart contract on Ethereum was described and executed off-chain, and the validity of the result was verified using zero knowledge proof. ZoKrates provides a Domain Specific Language (DSL), but the implemented language is basic. In this research, we proposed an extension language for this DSL and provided a Variant type [2] to reduce run-time errors and improve the availability of ZoKrates.