
  // Cross browser add event wrapper
  function addEvent(elm, evType, fn, useCapture) {
	  if (elm.addEventListener) {
		  elm.addEventListener(evType, fn, useCapture);
		  return true;
	  }
	  else if (elm.attachEvent) {
		  var r = elm.attachEvent('on' + evType, fn);
		  return r;
	  }
	  else {
		  elm['on' + evType] = fn;
	  }
  }

  // Cross browser remove event wrapper
  function removeEvent(obj, evType, fn, useCapture){
    if (obj.removeEventListener){
      obj.removeEventListener(evType, fn, useCapture);
      return true;
    } else if (obj.detachEvent){
      var r = obj.detachEvent("on"+evType, fn);
      return r;
    } else {
      alert("Handler could not be removed");
    }
  }

  function camsoftXML(){ }

  camsoftXML.XMLHttpRequest = function (){

      // Create xmlHttp var
      var xmlHttp;

      // Check of native XMLHttpRequest support
      if(window.XMLHttpRequest){

          try{
              xmlHttp = new XMLHttpRequest();
          }
          catch(e){
              xmlHttp = false;
          }
      }
      else if(window.ActiveXObject){

          // IE 6 (Non native support)
          try{
              xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
          }
          catch(e)
          {
              try{
                  xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
              }
              catch(e){
                  xmlHttp = false;
              }
          }
      }

      return xmlHttp;
  }

