if (!Function.prototype.bind) {
    Function.prototype.bind = function (oThis) {
        if (typeof this !== "function") {
            // closest thing possible to the ECMAScript 5
            // internal IsCallable function
            throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable");
        }

        var aArgs = Array.prototype.slice.call(arguments, 1), 
            fToBind = this, 
            fNOP = function () {},
            fBound = function () {
                return fToBind.apply(this instanceof fNOP && oThis ? this : oThis, aArgs.concat(Array.prototype.slice.call(arguments)));
            };

        fNOP.prototype = this.prototype;
        fBound.prototype = new fNOP();

        return fBound;
    };
}

@@ -1,12 +1,50 @@
+(function () %7B%0A    %22use strict%22;%0A%0A    
 if (!Functio
@@ -59,24 +59,28 @@
 ype.bind) %7B%0A
+    
     Function
@@ -112,24 +112,28 @@
 n (oThis) %7B%0A
+    
         if (
@@ -174,16 +174,20 @@
         
+    
 // close
@@ -236,16 +236,20 @@
         
+    
 // inter
@@ -272,16 +272,20 @@
 unction%0A
+    
         
@@ -393,11 +393,19 @@
     
+   
+ 
 %7D%0A%0A
+    
     
@@ -461,18 +461,21 @@
 nts, 1),
- 
 %0A
+    
         
@@ -493,17 +493,16 @@
  = this,
- 
 %0A       
@@ -506,17 +506,21 @@
         
-f
+    F
 NOP = fu
@@ -533,16 +533,20 @@
  () %7B%7D,%0A
+    
         
@@ -580,32 +580,36 @@
                 
+   
+ 
 return fToBind.a
@@ -629,17 +629,17 @@
 tanceof 
-f
+F
 NOP && o
@@ -713,16 +713,20 @@
 nts)));%0A
+    
         
@@ -741,17 +741,21 @@
         
-f
+    F
 NOP.prot
@@ -782,24 +782,28 @@
 pe;%0A        
+  
+  
 fBound.proto
@@ -813,17 +813,17 @@
 e = new 
-f
+F
 NOP();%0A%0A
@@ -822,32 +822,36 @@
 NOP();%0A%0A        
+   
+ 
 return fBound;%0A 
@@ -857,9 +857,23 @@
     
-%7D;%0A%7D
+    %7D;%0A    %7D%0A%7D());
 %0A

Fix jshint errors