add basic IO and dynamic arrays