# EVM compatibility on Ethereum Classic Ethereum Classic aims to keep compatibility with the Ethereum Virtual Machine (a.k.a. EVM) by eventually including changes from the latests ETH network upgrades. This process implies the coordination of a network upgrade on the Ethereum Classic network. At the time of writing, with the activation of **Mystique** ([ECIP-1104](https://ecips.ethereumclassic.org/ECIPs/ecip-1104)), Ethereum Classic supports EVM features up to the [London](https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/london.md) upgrade. Right now we're working on adding support for [Shangai](https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/shanghai.md) which we expect it will be ready on Q3 2023. For Solidity developers deploying on the Ethereum Classic network, it's important that you compile your smart contracts by setting the _target_ to **london**. I.e. ```shell $ solc --evm-version london contract.sol ``` You can find more information about this, and other configuration options, on Solidity's [official documentation](https://docs.soliditylang.org/en/latest/using-the-compiler.html#setting-the-evm-version-to-target) site.