solc working