code: def query_gal(self, l, b, d=None, **kwargs):
          
  
          if not isinstance(l, units.Quantity):
              l = l * units.deg
          if not isinstance(b, units.Quantity):
              b = b * units.deg
  
          if d is None:
              coords = coordinates.SkyCoord(l, b, frame='galactic')
          else:
              if not isinstance(d, units.Quantity):
                  d = d * units.kpc
              coords = coordinates.SkyCoord(
                  l, b,
                  distance=d,
                  frame='galactic')
  
          return self.query(coords, **kwargs)
docs: Query using Galactic coordinates.
  
          Args:
              l (:obj:`float`, scalar or array-like): Galactic longitude, in degrees,
                  or as an :obj:`astropy.unit.Quantity`.
              b (:obj:`float`, scalar or array-like): Galactic latitude, in degrees,
                  or as an :obj:`astropy.unit.Quantity`.
              d (Optional[:obj:`float`, scalar or array-like]): Distance from the Solar
                  System, in kpc, or as an :obj:`astropy.unit.Quantity`. Defaults to
                  ``None``, meaning no distance is specified.
              **kwargs: Any additional keyword arguments accepted by derived
                  classes.
  
          Returns:
              The results of the query, which must be implemented by derived
              classes.