function Kubure(){

  var req=false;
  
  if(window.XMLHttpRequest){ 
    req=new XMLHttpRequest();
    if(req.overrideMimeType)req.overrideMimeType('text/xml');
  }else if(window.ActiveXObject){
    try{
      req=new ActiveXObject("Msxml2.XMLHTTP");
    }catch(e){
      try{
        req=new ActiveXObject("Microsoft.XMLHTTP");
      }catch(e){}
    }
  }

  
  
  if(!req){
    alert("Kubure: Fatal error");
    return false;
  }
  

  
  this.setFinalMethod=function(fce){
    req.onreadystatechange=function(){
      if(req.readyState==4)fce(req.status);
    };
  }

  
  this.request=function(method,url,params){
    if(method.toUpperCase()=="POST"){
      req.open("POST",url);
      if(!isUndefined(params))req.send(params);

    }else req.open(method.toUpperCase(),url+(isUndefined(params)?"":"?"+params))
    req.send(null);
  }
  
  
  this.getResponseText=function(){
    return req.responseText;
  }
  
  this.getResponseObject=function(){
    return req.responseXML;
  }

  
}


