in reply to Hash of array of hashes

You may wish to note that $condition[0] does not relate to any element of @conditioin ...which is just one of the examples in your original post that show why using strict and warn is such good practice.
the (relevant) others are:

Unmatched right curly bracket at mapping.pl line 7, at end of line syntax error at mapping.pl line 7, near "]}"

Perhaps these are merely typos created while posting your question; if so, another recommendation: cut and paste code, rather than risk introducing irrelevant typos (or, as has occasionally occured, fixing a problem by eliminating a typo).