code: def build(obj: Any, *applicators: Callable[..., Any]) -> Any:
      
      if isinstance(obj, BaseChain):
          return pipe(obj, copy(), *applicators)
      else:
          return pipe(obj, *applicators)
docs: Run the provided object through the series of applicator functions.
  
      If ``obj`` is an instances of :class:`~eth.chains.base.BaseChain` the
      applicators will be run on a copy of the chain and thus will not mutate the
      provided chain instance.