code: public List<HashMap<IBond, IBond>> getTargetQueryBondMappings() {
          if (mappings == null) return null;
          
          List<HashMap<IBond,IBond>> bondMap = new ArrayList<>();
          
          // query -> target so need to inverse the mapping
          // XXX: re-subsearching the query
          for (Map<IBond,IBond> map : mappings.toBondMap()) {
              bondMap.add(new HashMap<>(HashBiMap.create(map).inverse()));
          }
          
          return bondMap;
      }
docs: Return a list of HashMap's that allows one to get the query constraint for a given pharmacophore bond.
  
  If the matching is successful, the return value is a List of HashMaps, each
  HashMap corresponding to a separate match. Each HashMap is keyed on the {@link org.openscience.cdk.pharmacophore.PharmacophoreBond}
  in the target molecule that matched a constraint ({@link org.openscience.cdk.pharmacophore.PharmacophoreQueryBond} or
  {@link org.openscience.cdk.pharmacophore.PharmacophoreQueryAngleBond}. The value is the corresponding query bond.
  
  @return A List of HashMaps, identifying the query constraint corresponding to a matched constraint in the target
  molecule.