bring a bit of sanity in _push_data, _set_data and flatten_object methods