uncleaned version of Circuitpushing