code: def data_tree_map(func, data_tree):
      
      def map_to_typed_data(elements):
          if isinstance(elements, ABITypedData) and elements.abi_type is not None:
              return ABITypedData(func(*elements))
          else:
              return elements
      return recursive_map(map_to_typed_data, data_tree)
docs: Map func to every ABITypedData element in the tree. func will
      receive two args: abi_type, and data