replaced 7 initializer arguments with a hash