diff --git a/actions/ost-compare-structures b/actions/ost-compare-structures
index c891964339aab2b01d13c6bc160b9ab5b2dc9a46..b244c22c00e7dda29e101093954bdaf10e1016f3 100644
--- a/actions/ost-compare-structures
+++ b/actions/ost-compare-structures
@@ -75,6 +75,7 @@ from ost import PushVerbosityLevel
 from ost.mol.alg import (qsscoring, Molck, MolckSettings, lDDTSettings,
                          CheckStructure, ResidueNamesMatch)
 from ost.conop import CompoundLib
+from ost.seq.alg.renumber import Renumber
 
 
 class _DefaultStereochemicalParamAction(argparse.Action):
@@ -449,11 +450,11 @@ def _RevertChainNames(ent):
     ost.LogInfo("Reverted chains: %s" % ", ".join(rev_out))
 
 
-def _CheckConsistency(reference, model, chain_mapping, log_error):
+def _CheckConsistency(alignments, log_error):
     is_cons = True
-    for ref_cname, mdl_cname in chain_mapping.iteritems():
-        ref_chain = reference.Select("cname=%s" % ref_cname)
-        mdl_chain = model.Select("cname=%s" % mdl_cname)
+    for alignment in alignments:
+        ref_chain = Renumber(alignment.GetSequence(0)).CreateFullView()
+        mdl_chain = Renumber(alignment.GetSequence(1)).CreateFullView()
         is_cons = ResidueNamesMatch(ref_chain, mdl_chain, log_error)
     return is_cons
 
@@ -669,9 +670,7 @@ def _Main():
             ost.LogInfo("Checking consistency between %s and %s" % (
                         model_name, reference_name))
             is_cons = _CheckConsistency(
-                reference,
-                model,
-                qs_scorer.chain_mapping,
+                qs_scorer.alignments,
                 opts.consistency_checks)
             reference_results["info"]["residue_names_consistent"] = is_cons
             reference_results["info"]["mapping"] = {