 var tagScript = '(?:<script.*?>)((\n|\r|.)*?)(?:<\/script>)'; 
        /** 
        * Eval script fragment 
        * @return String 
        */ 
        String.prototype.evalScript = function() 
        { 
                return (this.match(new RegExp(tagScript, 'img')) || []).evalScript(); 
        }; 
        /** 
        * strip script fragment 
        * @return String 
        */ 
        String.prototype.stripScript = function() 
        { 
                return this.replace(new RegExp(tagScript, 'img'), ''); 
        }; 
        /** 
        * extract script fragment 
        * @return String 
        */ 
        String.prototype.extractScript = function() 
        {   
           var matchAll = new RegExp(tagScript, 'img'); 
           return (this.match(matchAll) || []); 
        }; 
        /** 
        * Eval scripts 
        * @return String 
        */ 
        Array.prototype.evalScript = function(extracted) 
        { 
           var s=this.map(function(sr){ 
           var sc=(sr.match(new RegExp(tagScript, 'im')) || ['', ''])[1]; 
           if(window.execScript){ 
              window.execScript(sc);
           } 
           else 
           { 
              window.setTimeout(sc,0); 
           } 
           }); 
           return true; 
        }; 
        /** 
        * Map array elements 
        * @param {Function} fun 
        * @return Function 
        */ 
        Array.prototype.map = function(fun) 
        { 
                if(typeof fun!=="function"){return false;} 
                var i = 0, l = this.length; 
                for(i=0;i<l;i++) 
                { 
                        fun(this[i]); 
                } 
                return true; 
        };  
