    var _sw_action = "";
    var _sw_filename = "";
    var _sw_filetitle = "";
    var _id = "";
    var _sw_fname = "";
    var _sw_lname = "";
    var _sw_fname_val = "";
    var _sw_lname_val = "";
    
    var _sw_downloadpath = "";
    var _sw_email = "";
    var _sw_email_val = "";
    
    var _sw_phone = "";
    var _sw_phone_val = "";

    var _sw_company = "";
    var _sw_company_val = "";

    var _sw_formdiv = "";
    var _sw_convertcontent = "";
    var _sw_emailurl ="";
    
    var _sw_email_from= "";
    var _sw_site_name="";
    var _debug = "";
    
    var _sw_successdiv = "";
    
    var _sw_successdiv_val = "";
    
    var _sw_fulldownloadpath = "";
    
    var _sw_form ="";
    
    var _sw_send_email_to_customer="";
    var _sw_uses_phone ="";
    
    var _sw_leadtemplate = "";
    var _sw_customertemplate = "";

    var _sw_alreadysuccessmessage = "";
    
    var _sw_leademail ="";
    
    var _sw_lead_subject = "";

    var _sw_cclist = "";
    var _sw_bcclist = "";
    
    var_pageTracker = "";
      _sw_source =""; 
      _sw_medium=""; 
      _sw_term =""; 
      _sw_content=""; 
      _sw_campaign=""; 
      _sw_csegment="";

      var _sw_pagetrack = "";


      if (typeof (sw_pagetrack) != "undefined") {

          _sw_pagetrack = sw_pagetrack;
      }
      else {
          document.write("<p class=error>_sw_pagetrack not defined</p>");
      }  
     if (typeof (sw_bcclist) != "undefined") {

        _sw_bcclist = sw_bcclist;
    }
    else
    {
      //document.write("<p class=error>sw_bcclist not defined</p>");
  }

  if (typeof (sw_lead_subject) != "undefined") {

      _sw_lead_subject = sw_lead_subject;
  }
  else {
//      document.write("<p class=error>sw_lead_subject not defined</p>");
  }
  
  if (typeof (sw_leademail) != "undefined") {

      _sw_leademail = sw_leademail;
  }
  else {
//      document.write("<p class=error>sw_leademail not defined</p>");
  }

  if (typeof (sw_cclist) != "undefined") {

      _sw_cclist = sw_cclist;
  }
  else {
//      document.write("<p class=error>sw_cc_list not defined</p>");
  }

  if (typeof (sw_alreadysuccessmessage) != "undefined") {

      _sw_alreadysuccessmessage = sw_alreadysuccessmessage;
  }
  else {
      document.write("<p class=error>_sw_alreadysuccessmessage not defined</p>");
  } 


      
   if (typeof (source) != "undefined") {

        _sw_source = source;
    }
    else
    {
      document.write("<p class=error>source not defined.  utmz.js included?</p>");
    }

   if (typeof (medium) != "undefined") {

        _sw_medium = medium;
    }
    else
    {
      document.write("<p class=error>medium not defined.  utmz.js included?</p>");
    }
    
    if (typeof (term) != "undefined") {

        _sw_term = term;
    }
    else
    {
      document.write("<p class=error>term not defined.  utmz.js included?</p>");
    }

   if (typeof (content) != "undefined") {

        _sw_content = content;
    }
    else
    {
      document.write("<p class=error>content not defined.  utmz.js included?</p>");
    }


   if (typeof (campaign) != "undefined") {

        _sw_campaign = campaign;
    }
    else
    {
      document.write("<p class=error>campaign not defined.  utmz.js included?</p>");
    }
    
    
   if (typeof (csegment) != "undefined") {

        _sw_csegment = csegment;
    }
    else
    {
      document.write("<p class=error>csegment not defined.  utmz.js included?</p>");
    }
    
    
    if (typeof (pageTracker) != "undefined") {

        _pageTracker = pageTracker;
    }
    else
    {
      document.write("<p class=error>pagetracker not defined.  ga.js included?</p>");
    }
    
   // alert(typeof(sw_wtf));
    if (typeof (sw_leadtemplate) != "undefined") {

        _sw_leadtemplate = sw_leadtemplate;
    }
    else
    {
      document.write("<p class=error>sw_leadtemplate undefined</p>");
    }

    if (typeof (sw_customertemplate) != "undefined") {

        _sw_customertemplate = sw_customertemplate;
    }
    else
    {
      document.write("<p class=error>sw_customertemplate undefined</p>");
    }

    
    if (typeof (sw_send_email_to_customer) != "undefined") {

        _sw_send_email_to_customer = sw_send_email_to_customer;
    }
    else
    {
      document.write("<p class=error>sw_send_email_to_customer undefined</p>");
    }

    if (typeof (sw_uses_phone) != "undefined") {

        _sw_uses_phone = sw_uses_phone;
    }
    else
    {
      document.write("<p class=error>sw_uses_phone undefined</p>");
    }
    
     if (typeof (sw_successdiv) != "undefined") {

        _sw_successdiv = sw_successdiv;
    }
    else
    {
      document.write("<p class=error>sw_successdiv undefined</p>");
    }
    
    if (typeof (sw_downloadpath) != "undefined") {

        _sw_downloadpath = sw_downloadpath;
    }
    else
    {
      document.write("<p class=error>sw_downloadpath undefined</p>");
    }
    
    
    if (typeof (action) != "undefined") {

        _sw_action = action;
    }
    else
    {
      document.write("<p class=error>action undefined</p>");
    }
    
    if (typeof (filename) != "undefined") {

        _sw_filename = filename;
        _sw_fulldownloadpath = _sw_downloadpath + _sw_filename;
       // alert(_sw_fulldownloadpath);
    }
    else
    {
      document.write("<p class=error>filename undefined</p>");
    }   
    
    if (typeof (filetitle) != "undefined") {

        _sw_filetitle = filetitle;
    }
    else
    {
      document.write("<p class=error>filetitle undefined</p>");
    }   

    if (typeof (fileid) != "undefined") {

        _id = fileid;
    }
    else
    {
      document.write("<p class=error>fileid undefined</p>");
    }   


    if (typeof (sw_fname) != "undefined") {

        _sw_fname = sw_fname;
        _sw_fname_val = $("#" + _sw_fname).val();
    }
    else
    {
      document.write("<p class=error>sw_fname undefined</p>");
    }

  if (typeof (sw_fname) != "undefined") {

      _sw_lname = sw_lname;
      _sw_lname_val = $("#" + _sw_lname).val();
  }
  else {
      document.write("<p class=error>sw_lname undefined</p>");
  }   

    if (typeof (sw_email) != "undefined") {

        _sw_email =sw_email;
        _sw_email_val = $("#" + _sw_email).val();
    }
    else
    {
      document.write("<p class=error>sw_email undefined</p>");
    }   


    if (typeof (sw_phone) != "undefined") {

        _sw_phone = sw_phone;
        _sw_phone_val = $("#" + _sw_phone).val();
        
    }
    else
    {
      document.write("<p class=error>sw_phone undefined</p>");
    }


    if (typeof (sw_company) != "undefined") {

        _sw_company = sw_company;
        _sw_company_val = $("#" + _sw_company).val();
        
    }
    else
    {
      document.write("<p class=error>sw_phone undefined</p>");
    }   

    if (typeof (sw_formdiv) != "undefined") {

        _sw_formdiv = sw_formdiv;
    }
    else
    {
      document.write("<p class=error>sw_formdiv undefined</p>");
    }   

    if (typeof (sw_convertcontent) != "undefined") {

        _sw_convertcontent = sw_convertcontent;
    }
    else
    {
      document.write("<p class=error>sw_convertcontent undefined</p>");
    }   
    
    if (typeof (debug) != "undefined") {

        _debug = debug;
    }
    else
    {
      document.write("<p class=error>debug undefined</p>");
    }   
    
    if (typeof (sw_subject) != "undefined") {

        _sw_subject = sw_subject;
    }
    else
    {
      document.write("<p class=error>sw_subject undefined</p>");
    }   

    if (typeof (sw_site_name) != "undefined")  {
        _sw_site_name = sw_site_name;
    }
    else
    {
      document.write("<p class=error>sw_site_name undefined</p>");
    }   

    if (typeof (sw_email_from) != "undefined")  {
        _sw_email_from = sw_email_from;
    }
    
    else
    {
//      document.write("<p class=error>sw_email_from undefined</p>");
    }   

    if (typeof (sw_emailurl) != "undefined")  {
        _sw_emailurl = sw_emailurl;
    }
    else
    {
      document.write("<p class=error>sw_emailurl undefined</p>");
    }   
    
    if (typeof (sw_form) != "undefined")  {
        _sw_form = sw_form;
    }
    else
    {
      document.write("<p class=error>sw_form undefined</p>");
    }   



function d(msg)
{
  //alert(_debug);
   if (_debug == "true")
   {
      alert(msg)
   }
}


function uses_phone()
{
  if (_sw_uses_phone = "Y")
    return true;
  else
    return false;
}

function set_success_cookie()
{
    $.cookie("name", _sw_fname_val, { path: '/', expires: 365 });
    $.cookie("lname", _sw_lname_val, { path: '/', expires: 365 });
   $.cookie("email", _sw_email_val, { path: '/', expires: 365 });
   $.cookie("phone", _sw_phone_val, { path: '/', expires: 365 });                    
   $.cookie("company", _sw_company_val, { path: '/', expires: 365 });                    
   $.cookie(_id + "sent", "Y", { path: '/', expires: 365 });
}


function resend() {
    $.cookie(_id & "sent", "N",{ path: '/', expires: 365 } );
    //$.cookie("sentrequest", "N", { path: '/', expires: 365 });


    $("#" + _sw_alreadysuccessmessage).slideUp("normal", function () {
        $("#" + _id + "downloadarea").hide();
        $("#" + _id + "temparea").hide(); 
        $("#" + _sw_formdiv).show();
    });
    
}


function already_sent_msg() {
    
      $("#" + _sw_formdiv).slideUp("normal", function () {
       $("#" + _sw_formdiv).before("<div id=" + _sw_alreadysuccessmessage + ">" + $("#" + _sw_alreadysuccessmessage).html() + "</div>");

                            });
}

function already_sent()
{
      sentcookie = $.cookie(_id + "sent");
      if (sentcookie == "Y") {
          
          return true;
          
      }
      else
          return false;
  }

  function success_slide() {
      $("#" + _sw_formdiv).slideUp("normal", function () {
          pageTracker._trackPageview(_sw_pagetrack);
          set_success_cookie();

          $("#" + _sw_formdiv).before('<div id="successmessage">' + _sw_successdiv_val + '</div>');
	   $("#" + _sw_formdiv).after('<div style="display:inline;"><img height="1" width="1" style="border-style:none;" alt="" src="http://www.googleadservices.com/pagead/conversion/1054107530/?value=1&amp;label=xdGCCKr8zAEQis_R9gM&amp;guid=ON&amp;script=0"/></div>');
      });
  }
function email_is_valid(email)
{

	var hasError = false;
	var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
	var telusEmail = /@telus\.com/i;
	var hotmailEmail = /@hotmail\.com/i;
	var liveEmail = /@live\.com/i;
	var gmailEmail = /@gmawsil\.com/i;
	var yahooEmail = /@ya3hoo\.com/i;
	var yahooCAEmail = /@yahoo\.ca/i;
	var sympaticoEmail = /@sympatico\.ca/i;
	var rogersEmail = /@rogers\.com/;
	var ret = '';

	var emailVal = email;
  d("email: " + emailVal);
	if(emailVal == '') {
		ret='<p class="error">You forgot to enter your email address.</p>';
		hasError = true;
	} else if(!emailReg.test(emailVal)) {	
		ret='<p class="error">Enter a valid email address to send to.</p>';
		hasError = true;
	} else if(emailVal.match(telusEmail)) {	
		ret='<p class="error">Please use your Business / Office email address.</p>';
		hasError = true;
	} else if(emailVal.match(hotmailEmail)) {	
		ret='<p class="error">Please use your Business / Office email address.</p>';
		hasError = true;
	} else if(emailVal.match(liveEmail)) {	
		ret='<p class="error">Please use your Business / Office email address.</p>';
		hasError = true;
	} else if(emailVal.match(gmailEmail)) {	
		ret='<p class="error">Please use your Business / Office email address.</p>';
		hasError = true;
	} else if(emailVal.match(yahooEmail)) {	
		ret='<p class="error">Please use your Business / Office email address.</p>';
		hasError = true;
	} else if(emailVal.match(yahooCAEmail)) {	
		ret='<p class="error">Please use your Business / Office email address.</p>';
		hasError = true;
	} else if(emailVal.match(sympaticoEmail)) {	
		ret='<p class="error">Please use your Business / Office email address.</p>';
		hasError = true;
	} else if(emailVal.match(rogersEmail)) {	
		ret='<p class="error">Please use your Business / Office email address.</p>';
		hasError = true;
	}

	return ret;	
}



    /*var tracker = " "
    var emailto = "ryan@salesworks.com";
    var site_name = "Test Website";
    var convert_type = "Download";
    var copy = "Your 11 page report, 'Creating Innovative Breakthroughs in IEM &amp; Machine Assembly', will be delivered by email.";
    var emailscript = "phpemail.php";
    var template = "template.js";*/







$(document).ready(function () {

    _sw_email_val = $.cookie('email');
    _sw_fname_val = $.cookie('name');
    _sw_lname_val = $.cookie('lname');
    _sw_phone_val = $.cookie('phone');
    _sw_company_val = $.cookie('company');

    if (_sw_email_val) {
        $("#" + _sw_email).attr('value', _sw_email_val);
        $("#" + _sw_email).removeClass('default-value');
    }

    if (_sw_fname_val) {
        $("#" + _sw_fname).attr('value', _sw_fname_val);
        $("#" + _sw_fname).removeClass('default-value');
    }

    if (_sw_lname_val) {
        $("#" + _sw_lname).attr('value', _sw_lname_val);
        $("#" + _sw_lname).removeClass('default-value');
    }
    if (_sw_company_val) {
        $("#" + _sw_company).attr('value', _sw_company_val);
        $("#" + _sw_company).removeClass('default-value');
    }
    if (uses_phone()) {
        if (_sw_phone_val) {
            $("#" + _sw_phone).attr('value', _sw_phone_val);
            $("#" + _sw_phone).removeClass('default-value');
        }
    }

    if (already_sent()) {
        already_sent_msg();
    }
    else
    {
        $("#" + _sw_formdiv).show();
    }



    /* default values */
    var active_color = '#000000'; // Colour of user provided text
    var inactive_color = '#828282'; // Colour of default text

    $("input.default-value").css("color", inactive_color);

    var default_values = new Array();

    $("input.default-value").focus(function () {
        if (!default_values[this.id]) {
            default_values[this.id] = this.value;
        }
        if (this.value == default_values[this.id]) {
            this.value = '';
            this.style.color = active_color;
        }
        $(this).blur(function () {
            if (this.value == '') {
                this.style.color = inactive_color;
                this.value = default_values[this.id];
            }
        });
    });

    d('document ready');





    td = document.createElement("div");
    td.setAttribute("id", _id + "temparea");
    td.setAttribute("style", "display:none");

    $("#" + _sw_formdiv).append(td);

    td = document.createElement("div");
    td.setAttribute("id", _id + "downloadarea");
    td.setAttribute("style", "display:none");
    $("#" + _sw_formdiv).append(td);

    //create temp area

    $("#" + _id + "temparea").load(_sw_leadtemplate, function () { d('loaded temp'); d($("#" + _id + "temparea").html()); });

    d("loaded temp area");

    //create download area



    $("#" + _id + "downloadarea").load(_sw_customertemplate, function () { d('loaded download'); d($("#" + _id + "downloadarea").html()); });

    //if ($.validator)	{
    /*$.validator.addMethod("phone", function (ph, element) {
    if (ph == null) {
    return false;
    }
    var stripped = ph.replace(/[\s()+-]|ext\.?/gi, "");
    // 10 is the minimum number of numbers required
    return ((/\d{10,}/i).test(stripped));
    }, "Please enter a valid phone number");
    */
    // $("#" + sw_formdiv).validate();
    //}

    $("#" + _id + "downloadarea").hide();
    $("#" + _id + "temparea").hide(); 

    //$("#downloadbox").show();
    
   // $("#" + _sw_alreadysuccessmessage).show();

    $("#" + _sw_form).submit(function () {

        //var i = $.create('input', { 'id' : 'html', 'value' : 'test' , 'type' : 'hidden'});
        //alert('test');
        /*$("conversionform").append(i);
        */
        $(".error").hide();
        _sw_fname_val = $("#" + _sw_fname).val();
        _sw_lname_val = $("#" + _sw_lname).val();
        _sw_email_val = $("#" + _sw_email).val();
        _sw_company_val = $("#" + _sw_company).val();

        if (uses_phone())
            _sw_phone_val = $("#" + _sw_phone).val();
        else
            _sw_phone_val = "";


        d(_sw_fulldownloadpath);
        //replace links in the success msg to the actual file
        $("#" + _sw_successdiv).render({
            name: _sw_fname_val,
            lname: _sw_lname_val,
            phone: _sw_phone_val,
            company: _sw_company_val,
            email: _sw_email_val,
            website: _sw_site_name,
            link: "href='" + _sw_fulldownloadpath + "'"
        });

        _sw_successdiv_val = $("#" + _sw_successdiv).html();

        d(_sw_successdiv_val);
        hasError = false;

        var errormsg = email_is_valid(_sw_email_val);

        if (errormsg != '') {

            $("#" + sw_email).after(errormsg);
            hasError = true;
        }



        if ((_sw_fname_val == '') || _sw_fname_val == "Your First Name") {

            $("#" + _sw_fname).after('<p class="error">You forgot to enter your first name.</p>');

            hasError = true;

        }


        if ((_sw_lname_val == '') || _sw_lname_val == "Your Last Name") {

            $("#" + _sw_lname).after('<p class="error">You forgot to enter your last name.</p>');

            hasError = true;

        }
        if (uses_phone()) {

            if ((_sw_phone_val.length < 10) || (_sw_phone_val == "Phone Number")) {

                $("#" + _sw_phone).after('<p class="error">You forgot to enter a valid phone number.</p>');

                hasError = true;

            }
        }
        if ((_sw_company_val == '') || _sw_company_val == "Your Company Name") {

            $("#" + _sw_company).after('<p class="error">You forgot to enter your company name.</p>');

            hasError = true;

        }

		if ((MD5(document.getElementById('verif_box').value)+"a4xn") != getcookie("tntcon")) {
			 $("#verif_label").before('<p class="error">You Entered an Incorrect Validation Code.</p>');
			hasError = true;	
		}
		
        if (!hasError) {

            // if ($("#" + sw_formdiv).valid()) {

            //$("#theform").addClass("hiddenclass");

            /*  $("#message").spinner({
            height: 32,
            width: 32,
            speed: 60,
            image: '/edge2/images/linux_spinner.png'
            });*/



            //$("#temparea").load('/script/template.html', function()
            //	{

            $("#" + _id + "temparea").render({
                name: _sw_fname_val,
                lname: _sw_lname_val,
                phone: _sw_phone_val,
                email: _sw_email_val,
                company: _sw_company_val,
                link: _sw_fulldownloadpath,
		  fulllink: "<a href='" + _sw_fulldownloadpath + "'>" + _sw_filetitle + "</a>",
                title: _sw_filetitle,
                website: _sw_site_name,
                source: _sw_source,
                medium: _sw_medium,
                term: _sw_term,
                content: _sw_content,
                campaign: _sw_campaign,
                csegment: _sw_csegment,
                cclist: _sw_cclist,
                bcclist: _sw_bcclist,
                from: _sw_email_from
            });

            d($("#" + _id + "temparea").html());

            $("#" + _id + "downloadarea").render({

                name: _sw_fname_val,
                lname: _sw_lname_val,
                company: _sw_company_val,
                link: _sw_fulldownloadpath ,
	  fulllink: "<a href='" + _sw_fulldownloadpath + "'>" + _sw_filetitle + "</a>",
	
                title: _sw_filetitle,
                site_name: _sw_site_name
            });


 $.ajax({
                type: "POST",
                url: _sw_emailurl,
                data: {
                    html: $("#" + _id + "temparea").html(),
                   // from: _sw_email_from,
                   // to: _sw_leademail,
				   to:"",
                    site_name: _sw_site_name,
                    subject: _sw_lead_subject,
                  //  cclist: _sw_cclist,
                   // bcclist: _sw_bcclist
				   salesrep: "y",
verif_box: $("#verif_box").val()
                },
                        
                cache: false,
                dataType: "html"
                //async: false,
            });


            /*Send Email to Customer With Download*/
            d($("#" + _id + "downloadarea").html());


            if (_sw_send_email_to_customer == "Y") {
                $.ajax({
                    type: "POST",
                    url: _sw_emailurl,
                    data: {
                        html: $("#" + _id + "downloadarea").html(),
                      //  from: _sw_email_from,
                        to: _sw_email_val,
                        site_name: _sw_site_name,
                        subject: _sw_subject,
                       // cclist: _sw_cclist,
                      salesrep:"n",
					  //  bcclist: _sw_bcclist
 name: _sw_fname_val,
                lname: _sw_lname_val,
                phone: _sw_phone_val,
                email: _sw_email_val,
                company: _sw_company_val,
              
verif_box: $("#verif_box").val()
                    }
                          ,
                    cache: false,
                    dataType: "html",
                    //async: false,
                    complete:success_slide()
                    


                    
                });

            }
            else {
               success_slide();
            }

            /* send email to Sales REp */

           
        }
        return false;
    });


});





//new 6.21
var MD5 = function (string) {
 
	function RotateLeft(lValue, iShiftBits) {
		return (lValue<<iShiftBits) | (lValue>>>(32-iShiftBits));
	}
 
	function AddUnsigned(lX,lY) {
		var lX4,lY4,lX8,lY8,lResult;
		lX8 = (lX & 0x80000000);
		lY8 = (lY & 0x80000000);
		lX4 = (lX & 0x40000000);
		lY4 = (lY & 0x40000000);
		lResult = (lX & 0x3FFFFFFF)+(lY & 0x3FFFFFFF);
		if (lX4 & lY4) {
			return (lResult ^ 0x80000000 ^ lX8 ^ lY8);
		}
		if (lX4 | lY4) {
			if (lResult & 0x40000000) {
				return (lResult ^ 0xC0000000 ^ lX8 ^ lY8);
			} else {
				return (lResult ^ 0x40000000 ^ lX8 ^ lY8);
			}
		} else {
			return (lResult ^ lX8 ^ lY8);
		}
 	}
 
 	function F(x,y,z) { return (x & y) | ((~x) & z); }
 	function G(x,y,z) { return (x & z) | (y & (~z)); }
 	function H(x,y,z) { return (x ^ y ^ z); }
	function I(x,y,z) { return (y ^ (x | (~z))); }
 
	function FF(a,b,c,d,x,s,ac) {
		a = AddUnsigned(a, AddUnsigned(AddUnsigned(F(b, c, d), x), ac));
		return AddUnsigned(RotateLeft(a, s), b);
	};
 
	function GG(a,b,c,d,x,s,ac) {
		a = AddUnsigned(a, AddUnsigned(AddUnsigned(G(b, c, d), x), ac));
		return AddUnsigned(RotateLeft(a, s), b);
	};
 
	function HH(a,b,c,d,x,s,ac) {
		a = AddUnsigned(a, AddUnsigned(AddUnsigned(H(b, c, d), x), ac));
		return AddUnsigned(RotateLeft(a, s), b);
	};
 
	function II(a,b,c,d,x,s,ac) {
		a = AddUnsigned(a, AddUnsigned(AddUnsigned(I(b, c, d), x), ac));
		return AddUnsigned(RotateLeft(a, s), b);
	};
 
	function ConvertToWordArray(string) {
		var lWordCount;
		var lMessageLength = string.length;
		var lNumberOfWords_temp1=lMessageLength + 8;
		var lNumberOfWords_temp2=(lNumberOfWords_temp1-(lNumberOfWords_temp1 % 64))/64;
		var lNumberOfWords = (lNumberOfWords_temp2+1)*16;
		var lWordArray=Array(lNumberOfWords-1);
		var lBytePosition = 0;
		var lByteCount = 0;
		while ( lByteCount < lMessageLength ) {
			lWordCount = (lByteCount-(lByteCount % 4))/4;
			lBytePosition = (lByteCount % 4)*8;
			lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount)<<lBytePosition));
			lByteCount++;
		}
		lWordCount = (lByteCount-(lByteCount % 4))/4;
		lBytePosition = (lByteCount % 4)*8;
		lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80<<lBytePosition);
		lWordArray[lNumberOfWords-2] = lMessageLength<<3;
		lWordArray[lNumberOfWords-1] = lMessageLength>>>29;
		return lWordArray;
	};
 
	function WordToHex(lValue) {
		var WordToHexValue="",WordToHexValue_temp="",lByte,lCount;
		for (lCount = 0;lCount<=3;lCount++) {
			lByte = (lValue>>>(lCount*8)) & 255;
			WordToHexValue_temp = "0" + lByte.toString(16);
			WordToHexValue = WordToHexValue + WordToHexValue_temp.substr(WordToHexValue_temp.length-2,2);
		}
		return WordToHexValue;
	};
 
	function Utf8Encode(string) {
		string = string.replace(/\r\n/g,"\n");
		var utftext = "";
 
		for (var n = 0; n < string.length; n++) {
 
			var c = string.charCodeAt(n);
 
			if (c < 128) {
				utftext += String.fromCharCode(c);
			}
			else if((c > 127) && (c < 2048)) {
				utftext += String.fromCharCode((c >> 6) | 192);
				utftext += String.fromCharCode((c & 63) | 128);
			}
			else {
				utftext += String.fromCharCode((c >> 12) | 224);
				utftext += String.fromCharCode(((c >> 6) & 63) | 128);
				utftext += String.fromCharCode((c & 63) | 128);
			}
 
		}
 
		return utftext;
	};
 
	var x=Array();
	var k,AA,BB,CC,DD,a,b,c,d;
	var S11=7, S12=12, S13=17, S14=22;
	var S21=5, S22=9 , S23=14, S24=20;
	var S31=4, S32=11, S33=16, S34=23;
	var S41=6, S42=10, S43=15, S44=21;
 
	string = Utf8Encode(string);
 
	x = ConvertToWordArray(string);
 
	a = 0x67452301; b = 0xEFCDAB89; c = 0x98BADCFE; d = 0x10325476;
 
	for (k=0;k<x.length;k+=16) {
		AA=a; BB=b; CC=c; DD=d;
		a=FF(a,b,c,d,x[k+0], S11,0xD76AA478);
		d=FF(d,a,b,c,x[k+1], S12,0xE8C7B756);
		c=FF(c,d,a,b,x[k+2], S13,0x242070DB);
		b=FF(b,c,d,a,x[k+3], S14,0xC1BDCEEE);
		a=FF(a,b,c,d,x[k+4], S11,0xF57C0FAF);
		d=FF(d,a,b,c,x[k+5], S12,0x4787C62A);
		c=FF(c,d,a,b,x[k+6], S13,0xA8304613);
		b=FF(b,c,d,a,x[k+7], S14,0xFD469501);
		a=FF(a,b,c,d,x[k+8], S11,0x698098D8);
		d=FF(d,a,b,c,x[k+9], S12,0x8B44F7AF);
		c=FF(c,d,a,b,x[k+10],S13,0xFFFF5BB1);
		b=FF(b,c,d,a,x[k+11],S14,0x895CD7BE);
		a=FF(a,b,c,d,x[k+12],S11,0x6B901122);
		d=FF(d,a,b,c,x[k+13],S12,0xFD987193);
		c=FF(c,d,a,b,x[k+14],S13,0xA679438E);
		b=FF(b,c,d,a,x[k+15],S14,0x49B40821);
		a=GG(a,b,c,d,x[k+1], S21,0xF61E2562);
		d=GG(d,a,b,c,x[k+6], S22,0xC040B340);
		c=GG(c,d,a,b,x[k+11],S23,0x265E5A51);
		b=GG(b,c,d,a,x[k+0], S24,0xE9B6C7AA);
		a=GG(a,b,c,d,x[k+5], S21,0xD62F105D);
		d=GG(d,a,b,c,x[k+10],S22,0x2441453);
		c=GG(c,d,a,b,x[k+15],S23,0xD8A1E681);
		b=GG(b,c,d,a,x[k+4], S24,0xE7D3FBC8);
		a=GG(a,b,c,d,x[k+9], S21,0x21E1CDE6);
		d=GG(d,a,b,c,x[k+14],S22,0xC33707D6);
		c=GG(c,d,a,b,x[k+3], S23,0xF4D50D87);
		b=GG(b,c,d,a,x[k+8], S24,0x455A14ED);
		a=GG(a,b,c,d,x[k+13],S21,0xA9E3E905);
		d=GG(d,a,b,c,x[k+2], S22,0xFCEFA3F8);
		c=GG(c,d,a,b,x[k+7], S23,0x676F02D9);
		b=GG(b,c,d,a,x[k+12],S24,0x8D2A4C8A);
		a=HH(a,b,c,d,x[k+5], S31,0xFFFA3942);
		d=HH(d,a,b,c,x[k+8], S32,0x8771F681);
		c=HH(c,d,a,b,x[k+11],S33,0x6D9D6122);
		b=HH(b,c,d,a,x[k+14],S34,0xFDE5380C);
		a=HH(a,b,c,d,x[k+1], S31,0xA4BEEA44);
		d=HH(d,a,b,c,x[k+4], S32,0x4BDECFA9);
		c=HH(c,d,a,b,x[k+7], S33,0xF6BB4B60);
		b=HH(b,c,d,a,x[k+10],S34,0xBEBFBC70);
		a=HH(a,b,c,d,x[k+13],S31,0x289B7EC6);
		d=HH(d,a,b,c,x[k+0], S32,0xEAA127FA);
		c=HH(c,d,a,b,x[k+3], S33,0xD4EF3085);
		b=HH(b,c,d,a,x[k+6], S34,0x4881D05);
		a=HH(a,b,c,d,x[k+9], S31,0xD9D4D039);
		d=HH(d,a,b,c,x[k+12],S32,0xE6DB99E5);
		c=HH(c,d,a,b,x[k+15],S33,0x1FA27CF8);
		b=HH(b,c,d,a,x[k+2], S34,0xC4AC5665);
		a=II(a,b,c,d,x[k+0], S41,0xF4292244);
		d=II(d,a,b,c,x[k+7], S42,0x432AFF97);
		c=II(c,d,a,b,x[k+14],S43,0xAB9423A7);
		b=II(b,c,d,a,x[k+5], S44,0xFC93A039);
		a=II(a,b,c,d,x[k+12],S41,0x655B59C3);
		d=II(d,a,b,c,x[k+3], S42,0x8F0CCC92);
		c=II(c,d,a,b,x[k+10],S43,0xFFEFF47D);
		b=II(b,c,d,a,x[k+1], S44,0x85845DD1);
		a=II(a,b,c,d,x[k+8], S41,0x6FA87E4F);
		d=II(d,a,b,c,x[k+15],S42,0xFE2CE6E0);
		c=II(c,d,a,b,x[k+6], S43,0xA3014314);
		b=II(b,c,d,a,x[k+13],S44,0x4E0811A1);
		a=II(a,b,c,d,x[k+4], S41,0xF7537E82);
		d=II(d,a,b,c,x[k+11],S42,0xBD3AF235);
		c=II(c,d,a,b,x[k+2], S43,0x2AD7D2BB);
		b=II(b,c,d,a,x[k+9], S44,0xEB86D391);
		a=AddUnsigned(a,AA);
		b=AddUnsigned(b,BB);
		c=AddUnsigned(c,CC);
		d=AddUnsigned(d,DD);
	}
 
	var temp = WordToHex(a)+WordToHex(b)+WordToHex(c)+WordToHex(d);
 
	return temp.toLowerCase();
}


function getcookie(c_name)
{
var i,x,y,ARRcookies=document.cookie.split(";");
for (i=0;i<ARRcookies.length;i++)
{
  x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
  y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
  x=x.replace(/^\s+|\s+$/g,"");
  if (x==c_name)
    {
    return unescape(y);
    }
  }
}
