fork from https://github.com/mateusbraga/JVM-1.2