

            var _NAMING_CONVENTION_IMAGE_SWAP = "_on";
var image_module = 
{
   run : function() {
      var obj = null;
      var arr = document.getElementsByTagName("img");
      for(var i = 0; i < arr.length; i++)
      { 
         obj = arr[i];
         if(image_module.__isSwappable(obj))
         {
            image_module.__addSwapEvents(obj);
            image_module.__preLoad(obj);
         }
      }
   },
   __preLoad : function(img) {
      var ext = image_module.__getExtension(img);
      var objImage = document.createElement("img");
      objImage.src = img.src.replace(
             ext,
             _NAMING_CONVENTION_IMAGE_SWAP + ext);
   },
   __getExtension : function(img) {
       var i = img.src.lastIndexOf(".");
       return ext = img.src.substring(i,img.src.length);
   },
   __isSwappable : function(img) {
      return img.getAttribute("swap") == "true";
   },
   __addSwapEvents : function(img) {
       img.onmouseover = function() {
          var ext = image_module.__getExtension(img);
          this.src = this.src.replace(
              ext,
              _NAMING_CONVENTION_IMAGE_SWAP + ext);
       }
       img.onmouseout = function() {
          this.src = this.src.replace(
               _NAMING_CONVENTION_IMAGE_SWAP,
               '');
       }
   }
};

image_module.run();

