function klm(params) {

    /********/
    /* Globals
    /********/
    var _this  = this;

    /***********/
    /* Init
    /***********/
    this.init = function () {
         this.setVars();
         this.addEvents();
    };

    /***********/
    /* Ordenar
    /***********/
    this.setVars = function () {
         this._doc  = document;
         this._head = this._doc.getElementsByTagName("head")[0];
         this._body = this._doc.getElementsByTagName("body")[0];
    };

    /***********/
    /* addEvents
    /***********/
    this.addEvents = function () {
         this.addEvent(this._body,'click',this.captureClick);
    };

    /***********/
    /* Send
    /***********/
    this.send = function (p) {
         if ( !p['uk'] ) return;
         this._uk = p['uk'];
         var url = params['http']+'statsview/?key='+p['uk']+'&af='+p['af']+'&ak='+p['ak'];
         /*document.write(url);*/
         this.loadJS(url);
    };

    /***********/
    /* captureClick
    /***********/
    this.captureClick = function(e) {
         if (window.captureEvents) window.captureEvents(Event.CLICK);
         if (typeof event !== 'undefined') {var ev=event;el=event.srcElement;} else {var ev=e;var el=e.target;}
         if (!/(af_|ak_)/.test(el.id)) return;
         var ex = el.id.split("_");
         var url = params['http']+'statsclick/?key='+_this._uk;
         if ( ex[0] == 'af' ) {
              url += '&idk='+ex[1]+'&idf='+ex[2];
         } else {
              url += '&idk='+ex[1];
         }
         /*document.write(url);*/
         /*alert(url);return;*/
         _this.loadJS(url);
    };


    /***********/
    /* loadJS
    /***********/
    this.loadJS = function(filename) {
         var js = this._doc.createElement('script');
         js.type='text/javascript';
         js.src=filename;
         this._head.appendChild(js);
    };

    /***********/
    /* addEvent
    /***********/
    this.addEvent = function (elm, evType, fn, useCapture) {
         if (typeof elm.addEventListener != 'undefined' ) {
             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;
         }
    };
}
_klm = new klm({"http":"http://www.ciudades.com/klm/"});
_klm.init();
