code: def size(self):
      if self._cached_size is not None:
          return self._cached_size
      handler = UPLOADERS.get(self.descriptor.get("type", None), None)
      if handler is None:
          raise MetaflowException(
              "Could not interpret size of IncludedFile: %s"
              % json.dumps(self.descriptor)
          )
      self._cached_size = handler.size(self._descriptor)
      return self._cached_size
  
imports: from collections import namedtuple
  import gzip
  import io
  import json
  import os
  from hashlib import sha1
  from typing import Any, Dict, Optional
  from metaflow._vendor import click
  from .exception import MetaflowException
  from .parameters import DelayedEvaluationParameter, DeployTimeField, Parameter, ParameterContext
  from .util import get_username
  import functools
  from metaflow.plugins.datatools import Local, S3
  from metaflow.plugins.azure.includefile_support import Azure
  from metaflow.plugins.gcp.includefile_support import GS
label_desc: Use image node_id 3 for calling the IncludedFile obj's underlying member method code with example usage: obj.size() and returns: self, self