diff --git a/source/Lib/EncoderLib/InterSearch.cpp b/source/Lib/EncoderLib/InterSearch.cpp
index 68e1c739a72f017fd6a55b8629b8dea7f0f5daef..8e80e7c12d477fecccbc5ee7057f323f206551bd 100644
--- a/source/Lib/EncoderLib/InterSearch.cpp
+++ b/source/Lib/EncoderLib/InterSearch.cpp
@@ -1721,21 +1721,23 @@ bool InterSearch::xHashInterEstimation(PredictionUnit& pu, RefPicList& bestRefPi
     RefPicList eRefPicList = (refList == 0) ? REF_PIC_LIST_0 : REF_PIC_LIST_1;
     int refPicNumber = pu.cu->slice->getNumRefIdx(eRefPicList);
 
-#if JVET_M0483_IBC
+#if !JVET_M0483_IBC
     if (pu.cs->slice->getSPS()->getIBCFlag() && eRefPicList == REF_PIC_LIST_0)
-#else
-    if (pu.cs->slice->getSPS()->getIBCMode() && eRefPicList == REF_PIC_LIST_0)
-#endif
     {
       refPicNumber--;
     }
+#endif
 
     for (int refIdx = 0; refIdx < refPicNumber; refIdx++)
     {
-      int bitsOnRefIdx = refIdx + 1;
-      if (refIdx + 1 == refPicNumber)
+      int bitsOnRefIdx = 1;
+      if (refPicNumber > 1)
       {
-        bitsOnRefIdx--;
+        bitsOnRefIdx += refIdx + 1;
+        if (refIdx == refPicNumber - 1)
+        {
+          bitsOnRefIdx--;
+        }
       }
 
       if (refList == 0 || pu.cu->slice->getList1IdxToList0Idx(refIdx) < 0)
@@ -1778,7 +1780,7 @@ bool InterSearch::xHashInterEstimation(PredictionUnit& pu, RefPicList& bestRefPi
           int curMVPIdx = 0;
           unsigned int curMVPbits = MAX_UINT;
           Mv cMv((*it).x - currBlockHash.x, (*it).y - currBlockHash.y);
-          cMv.changePrecisionAmvr(MV_PRECISION_INT, MV_PRECISION_QUARTER);
+          cMv.changePrecision(MV_PRECISION_INT, MV_PRECISION_QUARTER);
 
           for (int mvpIdxTemp = 0; mvpIdxTemp < 2; mvpIdxTemp++)
           {
@@ -1794,7 +1796,7 @@ bool InterSearch::xHashInterEstimation(PredictionUnit& pu, RefPicList& bestRefPi
               pu.cu->imv = 0;
             }
 
-            if (pu.cu->slice->getSPS()->getAMVREnabledFlag() && (cMv.getHor() % 4 == 0) && (cMv.getVer() % 4 == 0))
+            if (pu.cu->slice->getSPS()->getAMVREnabledFlag())
             {
               unsigned int bitsMVP1Pel = MAX_UINT;
               Mv mvPred1Pel = currAMVPInfoPel.mvCand[mvpIdxTemp];