in reply to Hash value being called as a Scalar?

It looks like you are printing a reference, rather than the item being "referenced". Try to access the ios_version by de-referencing the variable using:

## print results ## notice the extra "$" in front of the variable print "$error\n$$ios_version\n\n";

The "$$" provides access to the actual data, rather than the reference, which simply "points" to the location of data