" Input: { (dict) - pre-loaded dict with characteristics that will be flattened or (flat_dict) - pre-loaded flat dict with characteristics USE 'characteristic_list' in dict! dict_to_add - data to analyze and add to dict (dict_to_compare) - flat dict to calculate improvements (process_multi_keys) - list of keys (starts with) to perform stat analysis on flat array, by default ['##characteristics#*', '##features#*' '##choices#*'], if empty, no stat analysis (skip_stat_analysis) - if 'yes', just flatten array and add #min } Output: { return - return code = 0, if successful > 0, if error (error) - error text if return > 0 dict_flat - updated and flattened original dictionary max_range_percent - max % range in float/int data (useful to record points with unusual behavior) min - 'yes', if one of monitored values reached min max - 'yes', if one of monitored values reached max } "