diff --git a/Common/wordcopypaste.js b/Common/wordcopypaste.js
index 6fa6f43b8d0e9b94a3e46222b1ed3e7815876353..ed692fb7ce5fd6283bc17aa0c7de76c96dbaa269 100644
--- a/Common/wordcopypaste.js
+++ b/Common/wordcopypaste.js
@@ -5594,7 +5594,7 @@ PasteProcessor.prototype =
 			}
 			
 			//���� ��������� ��������� ���������� ��������� �������
-			if(false == Common_CmpObj2(this.oCur_rPr, rPr))
+			if(!this.oCur_rPr.Is_Equal(rPr))
 			{
 			    this._Set_Run_Pr(rPr);
 				this.oCur_rPr = rPr;
diff --git a/Excel/model/clipboard.js b/Excel/model/clipboard.js
index 95d83112b3f2559cfddcdfbaa055d15a81b321f0..89ac6cde65be5c19115547bac7c9a89711fc5460 100644
--- a/Excel/model/clipboard.js
+++ b/Excel/model/clipboard.js
@@ -5857,133 +5857,4 @@ function Editor_CopyPaste_Create2(api)
     };
 
 	document.body.appendChild(elementText);
-}
-
-function CreateBinaryReader(szSrc, offset, srcLen)
-{
-    var nWritten = 0;
-
-    var index =  -1 + offset;
-    var dst_len = "";
-
-    for( ; index < srcLen; )
-    {
-        index++;
-        var _c = szSrc.charCodeAt(index);
-        if (_c == ";".charCodeAt(0))
-        {
-            index++;
-            break;
-        }
-
-        dst_len += String.fromCharCode(_c);
-    }
-
-    var dstLen = parseInt(dst_len);
-    if(isNaN(dstLen))
-        return null;
-    var pointer = g_memory.Alloc(dstLen);
-    var stream = new FT_Stream2(pointer.data, dstLen);
-    stream.obj = pointer.obj;
-
-    var dstPx = stream.data;
-
-    if (window.chrome)
-    {
-        while (index < srcLen)
-        {
-            var dwCurr = 0;
-            var i;
-            var nBits = 0;
-            for (i=0; i<4; i++)
-            {
-                if (index >= srcLen)
-                    break;
-                var nCh = DecodeBase64Char(szSrc.charCodeAt(index++));
-                if (nCh == -1)
-                {
-                    i--;
-                    continue;
-                }
-                dwCurr <<= 6;
-                dwCurr |= nCh;
-                nBits += 6;
-            }
-
-            dwCurr <<= 24-nBits;
-            for (i=0; i<nBits/8; i++)
-            {
-                dstPx[nWritten++] = ((dwCurr & 0x00ff0000) >>> 16);
-                dwCurr <<= 8;
-            }
-        }
-    }
-    else
-    {
-        var p = b64_decode;
-        while (index < srcLen)
-        {
-            var dwCurr = 0;
-            var i;
-            var nBits = 0;
-            for (i=0; i<4; i++)
-            {
-                if (index >= srcLen)
-                    break;
-                var nCh = p[szSrc.charCodeAt(index++)];
-                if (nCh == undefined)
-                {
-                    i--;
-                    continue;
-                }
-                dwCurr <<= 6;
-                dwCurr |= nCh;
-                nBits += 6;
-            }
-
-            dwCurr <<= 24-nBits;
-            for (i=0; i<nBits/8; i++)
-            {
-                dstPx[nWritten++] = ((dwCurr & 0x00ff0000) >>> 16);
-                dwCurr <<= 8;
-            }
-        }
-    }
-
-    return stream;
-}
-
-function Common_CmpObj2(Obj1, Obj2)
-{
-    if(!Obj1 || !Obj2 || typeof(Obj1) != typeof(Obj2))
-        return false;
-    var p, v1, v2;
-    //проверяем чтобы Obj1 имел теже свойства что и Obj2
-    for(p in Obj2)
-    {
-        if(!Obj1.hasOwnProperty(p))
-            return false;
-    }
-    //проверяем чтобы Obj2 имел теже свойства что и Obj1 и сравниваем их
-    for(p in Obj1)
-    {
-        if(Obj2.hasOwnProperty(p))
-        {
-            v1 = Obj1[p];
-            v2 = Obj2[p];
-            if(v1 && v2 && 'object' === typeof(v1) && 'object' === typeof(v2) )
-            {
-                if( false == Common_CmpObj2(v1, v2))
-                    return false;
-            }
-            else
-            {
-                if(v1 != v2)
-                    return false;
-            }
-        }
-        else
-            return false;
-    }
-    return true;
-};
+}
\ No newline at end of file