code: def _extract_array(self, kwargs_list):
          
          if self._solver_type == 'PROFILE_SHEAR':
              e1 = kwargs_list[1]['e1']
              e2 = kwargs_list[1]['e2']
              phi_ext, gamma_ext = param_util.ellipticity2phi_gamma(e1, e2)
          else:
              phi_ext = 0
          lens_model = self._lens_mode_list[0]
          if lens_model in ['SPEP', 'SPEMD', 'SIE', 'NIE']:
              e1 = kwargs_list[0]['e1']
              e2 = kwargs_list[0]['e2']
              center_x = kwargs_list[0]['center_x']
              center_y = kwargs_list[0]['center_y']
              theta_E = kwargs_list[0]['theta_E']
              x = [theta_E, e1, e2, center_x, center_y, phi_ext]
          elif lens_model in ['NFW_ELLIPSE']:
              e1 = kwargs_list[0]['e1']
              e2 = kwargs_list[0]['e2']
              center_x = kwargs_list[0]['center_x']
              center_y = kwargs_list[0]['center_y']
              theta_Rs = kwargs_list[0]['theta_Rs']
              x = [theta_Rs, e1, e2, center_x, center_y, phi_ext]
          elif lens_model in ['SHAPELETS_CART']:
              coeffs = list(kwargs_list[0]['coeffs'])
              [c10, c01, c20, c11, c02] = coeffs[1: 6]
              x = [c10, c01, c20, c11, c02, phi_ext]
          else:
              raise ValueError("Lens model %s not supported for 4-point solver!" % lens_model)
          return x
docs: inverse of _update_kwargs
          :param kwargs_list:
          :return: