simplified I[] and added for loop compile. need to figure out how to best handle several pass compiling to simplify switch statement