code: def collect_and_execute_subfields(
          self,
          return_type: GraphQLObjectType,
          field_nodes: List[FieldNode],
          path: ResponsePath,
          result: Any,
      ) -> AwaitableOrValue[Dict[str, Any]]:
          
          sub_field_nodes = self.collect_subfields(return_type, field_nodes)
          return self.execute_fields(return_type, result, path, sub_field_nodes)
docs: Collect sub-fields to execute to complete this value.