arrays and optimizations left