ClientInfo = function() {

    this.agt 			= navigator.userAgent.toLowerCase();
    
	this.is_major 		= parseInt( navigator.appVersion );
    this.is_minor 		= parseFloat( navigator.appVersion );

    this.is_nav  		= ( ( this.agt.indexOf( 'mozilla' ) != -1 ) && ( this.agt.indexOf( 'spoofer' ) == -1 )
							&& ( this.agt.indexOf( 'compatible' ) == -1 ) && ( this.agt.indexOf( 'opera' ) == -1 )
							&& ( this.agt.indexOf('webtv')== -1 ) && ( this.agt.indexOf( 'hotjava' ) == -1 ) );
    
	this.is_nav2 		= ( this.is_nav && ( this.is_major == 2 ) );
    this.is_nav3 		= ( this.is_nav && ( this.is_major == 3 ) );
    this.is_nav4 		= ( this.is_nav && ( this.is_major == 4 ) );
    this.is_nav4up 		= ( this.is_nav && ( this.is_major >= 4 ) );
    
	this.is_navonly		= ( this.is_nav && ( ( this.agt.indexOf( ';nav' ) != -1 ) ||
							( this.agt.indexOf( '; nav' ) != -1 ) ) );
						  
    this.is_nav6 		= ( this.is_nav && ( this.is_major == 5 ) );
    this.is_nav6up 		= ( this.is_nav && ( this.is_major >= 5 ) );
    this.is_gecko 		= ( this.agt.indexOf( 'gecko' ) != -1 );

    this.is_ie     		= ( ( this.agt.indexOf( 'msie' ) != -1 ) && ( this.agt.indexOf( 'opera' ) == -1 ) );
    this.is_ie3    		= ( this.is_ie && ( this.is_major < 4 ) );
    this.is_ie4    		= ( this.is_ie && ( this.is_major == 4 ) && ( this.agt.indexOf( 'msie 4' ) != -1 ) );
    this.is_ie4up  		= ( this.is_ie && ( this.is_major >= 4 ) );
    this.is_ie5    		= ( this.is_ie && ( this.is_major == 4 ) && ( this.agt.indexOf( 'msie 5.0' ) != -1 ) );
    this.is_ie5_5  		= ( this.is_ie && ( this.is_major == 4 ) && ( this.agt.indexOf(	'msie 5.5' ) != -1 ) );
    this.is_ie5up  		= ( this.is_ie && ! this.is_ie3 && ! this.is_ie4 );
    this.is_ie5_5up 	= ( this.is_ie && ! this.is_ie3 && ! this.is_ie4 && ! this.is_ie5);
    this.is_ie6    		= ( this.is_ie && ( this.is_major == 4 ) && ( this.agt.indexOf( 'msie 6.' ) != -1 ) );
    this.is_ie6up  		= ( this.is_ie && ! this.is_ie3 && ! this.is_ie4 && ! this.is_ie5 && ! this.is_ie5_5);

    this.is_aol   		= ( this.agt.indexOf( 'aol' ) != -1 );
    this.is_aol3  		= ( this.is_aol && this.is_ie3 );
    this.is_aol4  		= ( this.is_aol && this.is_ie4 );
    this.is_aol5  		= ( this.agt.indexOf( 'aol 5' ) != -1 );
    this.is_aol6  		= ( this.agt.indexOf( 'aol 6' ) != -1 );

    this.is_opera 		= ( this.agt.indexOf( 'opera' ) != -1 );
    this.is_opera2 		= ( this.agt.indexOf( 'opera 2' ) != -1 || this.agt.indexOf( 'opera/2' ) != -1 );
    this.is_opera3 		= ( this.agt.indexOf( 'opera 3' ) != -1 || this.agt.indexOf( 'opera/3' ) != -1 );
    this.is_opera4 		= ( this.agt.indexOf( 'opera 4' ) != -1 || this.agt.indexOf( 'opera/4' ) != -1 );
    this.is_opera5 		= ( this.agt.indexOf( 'opera 5' ) != -1 || this.agt.indexOf( 'opera/5' ) != -1 );
    this.is_opera5up 	= (	this.is_opera && ! this.is_opera2 && ! this.is_opera3 && ! this.is_opera4 );

    this.is_webtv 		= ( this.agt.indexOf( 'webtv' ) != -1 ); 

    this.is_TVNavigator = ( ( this.agt.indexOf( 'navio' ) != - 1 ) || ( this.agt.indexOf( 'navio_aoltv' ) != -1 ) ); 
    this.is_AOLTV 		= this.is_TVNavigator;

    this.is_hotjava 	= ( this.agt.indexOf( 'hotjava' ) != -1 );
    this.is_hotjava3 	= ( this.is_hotjava && ( this.is_major == 3 ) );
    this.is_hotjava3up 	= ( this.is_hotjava && ( this.is_major >= 3 ) );

    this.is_js;
    
	if ( this.is_nav2 || this.is_ie3 ) this.is_js = 1.0;
	else if ( this.is_nav3 ) this.is_js = 1.1;
    else if ( this.is_opera5up ) this.is_js = 1.3;
    else if ( this.is_opera ) this.is_js = 1.1;
    else if ( ( this.is_nav4 && ( this.is_minor <= 4.05 ) ) || this.is_ie4 ) is_js = 1.2;
    else if ( ( this.is_nav4 && ( this.is_minor > 4.05 ) ) || this.is_ie5 ) is_js = 1.3;
    else if ( this.is_hotjava3up ) this.is_js = 1.4;
    else if ( this.is_nav6 || this.is_gecko) this.is_js = 1.5;
    else if ( this.is_nav6up ) this.is_js = 1.5;
    else if ( this.is_ie5up) this.is_js = 1.3
    else this.is_js = 0.0;

    this.is_win   		= ( ( this.agt.indexOf( 'win' ) != -1 ) || ( this.agt.indexOf( '16bit' ) != -1 ) );
    this.is_win95 		= ( ( this.agt.indexOf( 'win95' ) != -1 ) || ( this.agt.indexOf( 'windows 95' ) != -1 ) );

    this.is_win16 		= ( ( this.agt.indexOf( 'win16' ) != -1 ) || 
							( this.agt.indexOf( '16bit' ) != -1 ) || ( this.agt.indexOf( 'windows 3.1' ) != -1 ) || 
							( this.agt.indexOf( 'windows 16-bit' ) != -1 ) );  

    this.is_win31 		= ( ( this.agt.indexOf( 'windows 3.1' ) != -1 ) || ( this.agt.indexOf( 'win16' ) != -1 ) ||
							( this.agt.indexOf( 'windows 16-bit' ) != -1 ) );

    this.is_winme 		= ( ( this.agt.indexOf( 'win 9x 4.90' ) != -1 ) );
    this.is_win2k 		= ( ( this.agt.indexOf( 'windows nt 5.0' ) != -1 ) );

    this.is_win98 		= ( ( this.agt.indexOf( 'win98' ) != -1 ) || ( this.agt.indexOf( 'windows 98' ) != -1 ) );
    this.is_winnt 		= ( ( this.agt.indexOf( 'winnt' ) != -1 ) || ( this.agt.indexOf( 'windows nt' ) != -1 ) );
    this.is_win32 		= ( this.is_win95 || this.is_winnt || this.is_win98 || 
							( ( this.is_major >= 4) && ( navigator.platform == 'Win32' ) ) ||
							( this.agt.indexOf( 'win32' ) != -1 ) || ( this.agt.indexOf( '32bit' ) != -1 ) );

    this.is_os2   		= ( ( this.agt.indexOf( 'os/2' ) != -1 ) || 
							( navigator.appVersion.indexOf( 'OS/2' ) != -1 ) ||   
							( this.agt.indexOf( 'ibm-webexplorer' ) != -1 ) );

    this.is_mac    		= ( this.agt.indexOf( 'mac' ) != -1 );
    
	if ( this.is_mac && this.is_ie5up ) this.is_js = 1.4;
    
	this.is_mac68k 		= ( this.is_mac && ( ( this.agt.indexOf( '68k' ) != -1 ) || 
                            ( this.agt.indexOf( '68000' ) != -1 ) ) );
    this.is_macppc 		= ( this.is_mac && ( ( this.agt.indexOf( 'ppc' ) != -1 ) || 
							( this.agt.indexOf( 'powerpc' ) != -1 ) ) );

    this.is_sun   		= ( this.agt.indexOf( 'sunos' ) != -1 );
    this.is_sun4  		= ( this.agt.indexOf( 'sunos 4' ) != -1 );
    this.is_sun5  		= ( this.agt.indexOf( 'sunos 5' ) != -1 );
    this.is_suni86		= ( this.is_sun && ( this.agt.indexOf( 'i86' ) != -1 ) );
    this.is_irix  		= ( this.agt.indexOf( 'irix' ) != -1 );
    this.is_irix5 		= ( this.agt.indexOf( 'irix 5' ) != -1 );
    this.is_irix6 		= ( ( this.agt.indexOf( 'irix 6' ) != -1 ) || ( this.agt.indexOf( 'irix6' ) != -1 ) );
    this.is_hpux  		= ( this.agt.indexOf( 'hp-ux' ) != -1 );
    this.is_hpux9 		= ( this.is_hpux && ( this.agt.indexOf( '09.' ) != -1 ) );
    this.is_hpux10		= ( this.is_hpux && ( this.agt.indexOf( '10.' ) != -1 ) );
    this.is_aix   		= ( this.agt.indexOf( 'aix' ) != -1 );      // IBM
    this.is_aix1  		= ( this.agt.indexOf( 'aix 1' ) != -1 );    
    this.is_aix2  		= ( this.agt.indexOf( 'aix 2' ) != -1 );    
    this.is_aix3  		= ( this.agt.indexOf( 'aix 3' ) != -1 );    
    this.is_aix4  		= ( this.agt.indexOf( 'aix 4' ) != -1 );    
    this.is_linux 		= ( this.agt.indexOf( 'inux' ) != -1 );
    this.is_sco   		= ( this.agt.indexOf( 'sco' ) != -1 ) || ( this.agt.indexOf( 'unix_sv' ) != -1 );
    this.is_unixware 	= ( this.agt.indexOf( 'unix_system_v' ) != -1 ); 
    this.is_mpras    	= ( this.agt.indexOf( 'ncr' ) != -1 ); 
    this.is_reliant  	= ( this.agt.indexOf( 'reliantunix' ) != -1 );
    this.is_dec   		= ( ( this.agt.indexOf( 'dec' ) != -1 ) || ( this.agt.indexOf( 'osf1' ) != -1 ) || 
							( this.agt.indexOf( 'dec_alpha' ) != -1 ) || ( this.agt.indexOf( 'alphaserver' ) != -1 ) || 
							( this.agt.indexOf( 'ultrix' ) != -1 ) || ( this.agt.indexOf( 'alphastation' ) != -1 ) );
    this.is_sinix 		= ( this.agt.indexOf( 'sinix' ) != -1 );
    this.is_freebsd 	= ( this.agt.indexOf( 'freebsd' ) != -1 );
    this.is_bsd 		= ( this.agt.indexOf( 'bsd' ) != -1 );
    this.is_unix  		= ( ( this.agt.indexOf( 'x11' ) != -1 ) || this.is_sun || this.is_irix || this.is_hpux || 
							this.is_sco || this.is_unixware || this.is_mpras || this.is_reliant || 
							this.is_dec || this.is_sinix || this.is_aix || this.is_linux || this.is_bsd || this.is_freebsd );

    this.is_vms   		= ( ( this.agt.indexOf( 'vax' ) != -1 ) || ( this.agt.indexOf( 'openvms' ) != -1 ) );


}