Rewrote all of Chipulator