handles arrays