added support to recurse into nested data