Added "val" to constructos variables to reduce code size