now only flattened ignores failonundefined cause of it's special need