nodes: 0, module; 1, function_definition; 2, function_name:fit; 3, parameters; 4, block; 5, identifier:self; 6, identifier:t; 7, identifier:y; 8, default_parameter; 9, default_parameter; 10, expression_statement; 11, expression_statement; 12, expression_statement; 13, return_statement; 14, identifier:dy; 15, integer:1; 16, identifier:presorted; 17, False; 18, comment:"""Fit the smoother
  
          Parameters
          ----------
          t : array_like
              time locations of the points to smooth
          y : array_like
              y locations of the points to smooth
          dy : array_like or float (default = 1)
              Errors in the y values
          presorted : bool (default = False)
              If True, then t is assumed to be sorted.
  
          Returns
          -------
          self : Smoother instance
          """; 19, assignment; 20, call; 21, identifier:self; 22, pattern_list; 23, call; 24, attribute; 25, argument_list; 26, attribute; 27, attribute; 28, attribute; 29, attribute; 30, argument_list; 31, identifier:self; 32, identifier:_fit; 33, attribute; 34, attribute; 35, attribute; 36, identifier:self; 37, identifier:t; 38, identifier:self; 39, identifier:y; 40, identifier:self; 41, identifier:dy; 42, identifier:self; 43, identifier:_validate_inputs; 44, identifier:t; 45, identifier:y; 46, identifier:dy; 47, identifier:presorted; 48, identifier:self; 49, identifier:t; 50, identifier:self; 51, identifier:y; 52, identifier:self; 53, identifier:dy
code: def fit(self, t, y, dy=1, presorted=False):
          """Fit the smoother
  
          Parameters
          ----------
          t : array_like
              time locations of the points to smooth
          y : array_like
              y locations of the points to smooth
          dy : array_like or float (default = 1)
              Errors in the y values
          presorted : bool (default = False)
              If True, then t is assumed to be sorted.
  
          Returns
          -------
          self : Smoother instance
          """
          self.t, self.y, self.dy = self._validate_inputs(t, y, dy, presorted)
          self._fit(self.t, self.y, self.dy)
          return self