added recursive parsing for hashes with arrays