added arrays and lists to codegen