· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Z3A2


1. Z3A2


Z3A2Àº ÅؽºÆ® ¿£ÄÚµù Çü½ÄÀ̸ç 2008³â 8¿ù ºÎµé¿¡ ÀÇÇØ ¸¸µé¾îÁ³À¸¸ç °ü·ÃµÈ ÇÁ·Î±×·¥Àº GPLÀúÀ۱ǿ¡ µû¸¨´Ï´Ù.

z3a2_mascot.png
[PNG image (9.61 KB)]


  • °ü·Ã¿£ÄÚµù : H3Z2

  • °ü·Ã¾ð¾î : ºû±ò¾ð¾î - Bitggal Language

2. Z3A2 ¿£ÄÚµù Çü½Ä


2.1. ±âº»¿ø¸®


Z3A2´Â H3Z2 ¿Í À¯»çÇÑ ¿£ÄÚµù ü°è·Î 1byte ¶Ç´Â 2byte °ªÀ» 2°³,3°³ÀÇ ¾ËÆĺªÀ¸·Î º¯È¯½ÃÄÑÁÝ´Ï´Ù.Z3A2 1byte ¿Í 2byte ¸¦ ±¸ºÐÇϱâ À§Çؼ­ ÃÑ 65792( 256 + 65536 )°³ÀÇ Äڵ带 »ç¿ëÇÕ´Ï´Ù. Áï ´ë»ó ¹®ÀÚ¿­ ¶Ç´Â ¹ÙÀ̳ʸ®¸¦ 2byte ¿Í 1byte ´ÜÀ§·Î ºÐ¸®ÇÏ¿© ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. µû¶ó¼­ Ȧ¼ö ±æÀÌÀÇ ¸¶Áö¸· NULL°ª 1¹ÙÀÌÆ® ±îÁö ó¸®ÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù. ( H3Z2ÀÇ °æ¿ì Á÷Á¢ÁöÁ¤ ÇØ¾ß )

¾ËÆĺª 2¹®ÀÚ¿Í 3¹®ÀÚ·Î 65792°³ÀÇ Á¶ÇÕÀ» ¸¸µé ¼ö ÀÖ´Â °æ¿ì´Â ´ÙÀ½°ú °°ÀÌ ¿©·¯°¡Áö °æ¿ì°¡ ÀÖ½À´Ï´Ù.


   65536 + 256
= 24*52*52 + 28*32
= 29*47*48 + 23*16
= 35*36*52 + 17*16
= 35*39*48 + 17*16
= 36*38*48 + 16*8
= 40*38*43 + 12*36
= 40*40*41 + 12*16
= 41*37*43 + 11*51
= 44*31*48 + 8*40
= 51*30*43 + 1*2 


Z3A2´Â Á¦ÀÏ À§ÀÇ 24 * 52 * 52 + 28 * 32 ½Ä¿¡ ±âÀÎÇÑ ¾ËÆĺª Á¶ÇÕÀ» »ç¿ëÇÕ´Ï´Ù.

  • 24 * 52 * 52 + 28 * 32 = 256 + 65536 = 65792

  • Á¤±ÔÇ¥Çö½Ä : / O - Z A - Z A - Z | A - N A - P /i

À§ µî½Ä¿¡¼­ 24°ú 28ÀÇ ÇÕÀº 52·Î ¾ËÆĺªÀÇ ´ë¼Ò¹®ÀÚÇÕ°ú µ¿ÀÏÇϹǷΠ¼­·Î Áߺ¹µÇÁö ¾Ê°Ô Á¶ÇÕÇÒ ¼ö ÀÖ°í ù ¾ËÆĺª À¸·Î 3¹®ÀÚ Á¶ÇÕ°ú 2¹®ÀÚ Á¶ÇÕÀÎÁö¸¦ ÆÇ´ÜÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù. ( A - N ¿Í O - Z ´Â °ãÄ¡´Â ºÎºÐÀÌ ¾ø¾î¾ß ÇÔ. )

°¢ ÀÚ¸®ÀÇ ¾ËÆĺªÀº ´ÙÀ½ ¼ø¼­´ë·Î Áõ°¡°ªÀ» °¡Áö°Ô µË´Ï´Ù.

  • O - Z => "OoPpQqRrSsTtUuVvWwXxYyZz" ;

  • A - N => "AaBbCcDdEeFfGgHhIiJjKkLlMmNn" ;

  • A - Z , A - P => "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz" ;

1byte 0°ªÀº 'AA'°¡ µÇ¸ç 2byte 65536 Àº 'zzz'À¸·Î µË´Ï´Ù. Z3A2¶ó´Â ¸íĪÀº A2´Â AA¿¡ , Z3·Î zzz¿¡ ´ëÀÀÇϸç 'AA'·Î ½ÃÀÛÇؼ­ 'zzz'À¸·Î ³¡³ª´Â ÄÚµåü°è¶ó´Â Àǹ̸¦ ³»Æ÷ÇÕ´Ï´Ù.

  • AA ~ dp : 1byte 0 ~ 256

  • EA ~ zzz : 2byte 0 ~ 65536



H3Z2 ¿Í Z3A2´Â ¾ËÆĺª¸¸À» »ç¿ëÇÏ¿© ¿£ÄÚµùÇϱ⠶§¹®¿¡ À¥Àü¼ÛÀº ¹°·Ð ´Ù¾çÇÑ ÀÀ¿ëÀÌ °¡´ÉÇÕ´Ï´Ù. µµ¸ÞÀθíÀ̳ª ÆÄÀϸíÀ¸·Î »ç¿ëÇÏ´Â °ÍÀÌ °¡´ÉÇϸç ÇÁ·Î±×·¥ ¼Ò½ºÆÄÀÏ¿¡¼­ ¾ÕÆĺª Á¶ÇÕ¸¸À¸·Î ±¸¼ºµÇ¾ß ÇÒ ÅäÅ«À» ¸¸µé±â À§ÇØ »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

2.2. H3Z2 ¿Í Z3A2ÀÇ Â÷ÀÌ


H3Z2´Â 2byte´ÜÀ§·Î ó¸®Çϱ⠶§¹®¿¡ °¡Àå ¸¶Áö¸· NULL¹®ÀÚ¸¦ ±×´ë·Î ³öµÎ°Å³ª Á¦°ÅÇÏ°Ô µË´Ï´Ù. µû¶ó¼­ ¹®ÀÚ¿­ÀÌ ¾Æ´Ñ ¹ÙÀ̳ʸ®ÀÇ °æ¿ì´Â ¹®Á¦°¡ ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù. Z3A2´Â ÀÌ¿Í °°Àº ´ÜÁ¡À» º¸¿ÏÇÏ¿© 1byteÀÇ °ª°ú 2byteÀÇ °ªÀ» ºÐ¸®ÇÏ¿© Äڵ带 ÇÒ´çÇϵµ·Ï ÇÔÀ¸·Î½á ¹®Á¦¸¦ ÇØ°áÇÕ´Ï´Ù. µû¶ó¼­ Z3A2´Â ¹ÙÀ̳ʸ® µ¥ÀÌŸ¿¡ º¸´Ù ÀûÇÕÇÑ ¿£ÄÚµù Çü½ÄÀ̶ó ÇÒ ¼ö ÀÖ½À´Ï´Ù.

2.3. Z3A2ÀÇ Äڵ尪 º¸±â


AA => 0
Aa => 1
AB => 2
Ab => 3
AC => 4
Ac => 5
AD => 6
Ad => 7
AE => 8
Ae => 9
AF => 10
Af => 11
AG => 12
Ag => 13
AH => 14
Ah => 15
AI => 16
Ai => 17
AJ => 18
Aj => 19
AK => 20
Ak => 21
AL => 22
Al => 23
AM => 24
Am => 25
AN => 26
An => 27
AO => 28
Ao => 29
AP => 30
Ap => 31
aA => 32
aa => 33
aB => 34
ab => 35
aC => 36
ac => 37
aD => 38
ad => 39
aE => 40
ae => 41
aF => 42
af => 43
aG => 44
ag => 45
aH => 46
ah => 47
aI => 48
ai => 49
aJ => 50
aj => 51
aK => 52
ak => 53
aL => 54
al => 55
aM => 56
am => 57
aN => 58
an => 59
aO => 60
ao => 61
aP => 62
ap => 63
BA => 64
Ba => 65
BB => 66
Bb => 67
BC => 68
Bc => 69
BD => 70
Bd => 71
BE => 72
Be => 73
BF => 74
Bf => 75
BG => 76
Bg => 77
BH => 78
Bh => 79
BI => 80
Bi => 81
BJ => 82
Bj => 83
BK => 84
Bk => 85
BL => 86
Bl => 87
BM => 88
Bm => 89
BN => 90
Bn => 91
BO => 92
Bo => 93
BP => 94
.
.
.
.
.
.
.
NJ => 850
Nj => 851
NK => 852
Nk => 853
NL => 854
Nl => 855
NM => 856
Nm => 857
NN => 858
Nn => 859
NO => 860
No => 861
NP => 862
Np => 863
nA => 864
na => 865
nB => 866
nb => 867
nC => 868
nc => 869
nD => 870
nd => 871
nE => 872
ne => 873
nF => 874
nf => 875
nG => 876
ng => 877
nH => 878
nh => 879
nI => 880
ni => 881
nJ => 882
nj => 883
nK => 884
nk => 885
nL => 886
nl => 887
nM => 888
nm => 889
nN => 890
nn => 891
nO => 892
no => 893
nP => 894
np => 895
OAA => 896
OAa => 897
OAB => 898
OAb => 899
OAC => 900
OAc => 901
OAD => 902
OAd => 903
OAE => 904
OAe => 905
OAF => 906
OAf => 907
OAG => 908
OAg => 909
OAH => 910
OAh => 911
OAI => 912
OAi => 913
.
.
.
.
.
.
.
.
.
.
.
.
.
.
zZY => 65736
zZy => 65737
zZZ => 65738
zZz => 65739
zzA => 65740
zza => 65741
zzB => 65742
zzb => 65743
zzC => 65744
zzc => 65745
zzD => 65746
zzd => 65747
zzE => 65748
zze => 65749
zzF => 65750
zzf => 65751
zzG => 65752
zzg => 65753
zzH => 65754
zzh => 65755
zzI => 65756
zzi => 65757
zzJ => 65758
zzj => 65759
zzK => 65760
zzk => 65761
zzL => 65762
zzl => 65763
zzM => 65764
zzm => 65765
zzN => 65766
zzn => 65767
zzO => 65768
zzo => 65769
zzP => 65770
zzp => 65771
zzQ => 65772
zzq => 65773
zzR => 65774
zzr => 65775
zzS => 65776
zzs => 65777
zzT => 65778
zzt => 65779
zzU => 65780
zzu => 65781
zzV => 65782
zzv => 65783
zzW => 65784
zzw => 65785
zzX => 65786
zzx => 65787
zzY => 65788
zzy => 65789
zzZ => 65790
zzz => 65791


3. Z3A2ÀÇ PHP±¸Çö ÇÁ·Î±×·¥


3.1. Ŭ·¡½º ¼Ò½ºÄÚµå


<?php

/*
=== Z3A2 ¿£ÄÚµù ===

// @»ý¼º : 2008-8-22
// @¸¸µçÀÌ : ½Åµ¿ÀÍ  <.)++++<  budl 
// @¸ÞÀÏ : ikw3179@naver.com
// @ÀúÀ۱Ǡ: GPL

// @Z3A2 ¿£ÄÚµùÇü½Ä¿¡ ´ëÇÑ µµ¿ò¸» ¸µÅ© : http://wiki.kldp.org/wiki.php/Z3A2

...
*/

defineZ3A2_DIV896 ) ; //ÀÓ°è°ª  28*32
defineZ3A2_MAX65792 ) ; //ÇÑ°è°ª   65792 = 65536 + 256  

$Z3A2[Z] = "OoPpQqRrSsTtUuVvWwXxYyZz" ;
$Z3A2[N] = "AaBbCcDdEeFfGgHhIiJjKkLlMmNn" ;
$Z3A2[A] = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz"   ;
$Z3A2_D = array() ;

class  
z3a2
{

////-------------  ENCODE ---------------/////

    //$input ´Â ¹ÙÀ̳ʸ® 
    
function    encode$input )
    {
        
//¹ÙÀ̳ʸ®,¹®ÀÚ¿­Àΰæ¿ì ¼ýÀڹ迭·Î Àüȯ 
        
if( is_string$input ))
        {                
            
//¹®ÀÚ¿­À» 2byte Á¤¼ö°ªÀ¸·Î ¸¸µéµÇ ¸¶Áö¸·¿¡ ³²´Â 1byte °¡ Àִٸ頠µû·Î .
            
$len strlen$input ) ;
            
            if( 
$len 
            {    
//Ȧ¼ö ±æÀÌÀΠ°æ¿ì  ¸¶Áö¸· 1BYTE
                
$last_char_val ord$input$len -} ) ;
            }
                    
            
$input unpack'v*' $input );
            
            
//¸ðµç °ª¿¡  256À» Áõ°¡½ÃÅ°°í 
            
foreach( $input as $v )
            {                 
                
z3a2::encode_core$Rstr $v +256 ) ;
            }
            
            
//¸¶Áö¸· ¹ÙÀÌÆ®°¡ ÀÖÀ¸¸é Ãß°¡ÇÑ´Ù.
            
if( $last_char_val z3a2::encode_core$Rstr $last_char_val ) ; 
        }
        else if ( 
is_array$input ) ) // ¹è¿­
        
{
            foreach( 
$input as $a )
                
z3a2::encode_core$Rstr $a ) ;
        }
        else if ( 
is_int $input )) // Á¤¼ö
            
z3a2::encode_core$Rstr $input ) ;
      
        else  
trigger_error("ÀԷ°ª( $input )ÀÌ À¯È¿ÇÏÁö ¾ÊÀ½ [".__FUNCTION__."]"E_USER_ERROR );
        
        return 
$Rstr ;
        
    }
    
    function    
encode_core( &$rstr $codeVal )
    {
        global  
$Z3A2 ;
        
        
// ÀԷ°ªÀº  0 °ú 65792  ¹Ì¸¸ÀÇ °ªÀÌ¿©¾ß ÇÑ´Ù. 
        
if( $codeVal 0  ||  $codeVal >= Z3A2_MAX // 65792 = 65536 + 256 
        
trigger_error("°æ°è°ª( 0 ~ 65791 )À» ¹þ¾î³­ ¼öÄ¡ \$codeVal = $codeVal [".__FUNCTION__."]"E_USER_ERROR );        
        
        
        
        if( 
$codeVal Z3A2_DIV  // $codeVal < 896  ; 
        
{
          
$rstr  .=  $Z3A2[N][ intval$codeVal 32 ) ].
                      
$Z3A2[A][ $codeVal %32  ] ;
        }
        else{  
// >= 896
        
$codeVal  -=  Z3A2_DIV  ;

        
$midVal  intval$codeVal 2704 );//2704 = 52*52
        
$midRem  $codeVal 2704   ;

        
$rstr  .=   $Z3A2[Z][ $midVal   ]. 
                    
$Z3A2[A][ intval$midRem 52 ) ].  
                    
$Z3A2[A][ $midRem 52  ] ;
        }  
        
//return 1 ; 
    
}
    
    
    
////-------------  DECODE ---------------/////

    /// @function decode ´Â Z3A2 ¹®ÀÚ¿­À» ¼ýÀÚÀÇ ¹è¿­ ¶Ç´Â ¿ø·¡ÀÇ ¹ÙÀ̳ʸ®·Î ¹ÝȯÇÑ´Ù.
    /// $mode °ªÀÌ true À̸頹ÙÀ̳ʸ® ¹Ýȯ 
    /// $mode °ªÀÌ false  À̸頹迭°ªÀ¸·Î ¹Ýȯ 
    
function     decode(  $z3a2str $mode true  )
    {    
        global    
$Z3A2    ;
        
        
$Rary = array() ;
        
$R "" ;       
      
        for(
$i ;  
            
// (.) Àº ¸ÅÄ¡µÇÁö ¾Ê´Â ºÎºÐÀ» ¸ÅÄ¡Çϴ  °ÍÀÓ
            //\G¿É¼ÇÀ» »ç¿ëÇÏ¿© ¹®ÀÚ¿­ÀÇ ½ÃÀۺκÐÀÌ ¸ÅÄ¡µÇµµ·ÏÇؾߠÇÑ´Ù. ^Àº »ç¿ëÇÒ¼ö ¾ø´Ù.
            ///[O-Z][A-Z][A-Z]|[A-N][A-P]/
            
preg_match"/\G(?:([O-Z])[A-Z][A-Z]|[A-N][A-P]|(.))/i" 
                        
$z3a2str $match $i ) ;
                        
            
$i += strlen$match[0] ) )
        {      
            if( 
$match[2] ){ //(.) 
            /////////////////////////////////////
                
print $R  ": " .strlen$z3a2str ) ." :" 
                
trigger_error("ÀԷ Z3A2ÄÚµå( $z3a2str , $i:$match[2] )ÀÇ ÆÐÅÏ¿À·ù  [".__FUNCTION__."]" E_USER_ERROR ) ;
            }
            
            
//$match[1]Àº  ´ÜÁö $match[0] ÀÌ [O-Z]À¸·Î ½ÃÀÛÇÏ´ÂÁö ÆÇ´ÜÇϱâ À§ÇÑ °Í 
            
$dcode  z3a2::decode_core$match[0] , $match[1] )   ;
            
            if( 
$mode )
            {                
                if( 
$dcode <= 256 // 256
                    
$R .= chr$dcode ) ; //pack( "C" , $dcode )    ;
                
else if( $dcode <= Z3A2_MAX )
                    
$R .= pack"v" $dcode 256  )    ;
                
            }else 
array_push$Rary $dcode )    ;
            
        }
        
        if( 
$mode )    return $R    ;
        else         return 
$Rary    ;
        
    } 
//  function     decode( $z3a2str , $mode = 1  ) 
    
    
function    decode_init( )
    {        
        global  
$Z3A2  $Z3A2_D ;
        
        if( 
$Z3A2_D ) return ;
        
        
//print "INIT D INIT D INIT D INIT D <br>";

        
$Z3A2_D[Z] = array();
        
$Z3A2_D[N] = array();
        
$Z3A2_D[A] = array();

        foreach( 
$Z3A2 as  $key => $val )
        {
            for( 
$i $i strlen($Z3A2[$key]); $i++ )
            {
              
$Z3A2_D[$key][$val[$i]] = $i 
            }  
        }
    }    
    
    
// $Z_mode °¡ true À̸頠[O-Z] À¸·Î ½ÃÀÛ 
    
function decode_core$ecode $Z_mode )
    {          
        global  
$Z3A2_D  ;

        
$rVal ;
        
        
///[O-Z][A-Z][A-Z]|[A-N][A-P]/        
        
if( $Z_mode )
        {    
            
$rVal =   $Z3A2_D[Z][$ecode{0}]*2704 //2704 = 52*52
                
$Z3A2_D[A][$ecode{1}]*52
                
$Z3A2_D[A][$ecode{2}] 
                + 
Z3A2_DIV // 896                     
        
}        
        else 
        {    
            
$rVal =   $Z3A2_D[N][$ecode{0}]*32 
                
$Z3A2_D[A][$ecode{1}] ; 
            
        }
        
        return  
$rVal ;
    }
}

z3a2::decode_init( ); 


3.2. »ùÇÃÇÁ·Î±×·¥


<?
include        dirname(__FILE__)."/z3a2.php"    ;

$sample_text =<<<SAMPLE_TEXT

         ,----,  .--,-``-.
       .'   .`| /   /     '.     ,---,          ,----,
    .'   .'   ;/ ../        ;   '  .' \       .'   .' \
  ,---, '    .'\ ``\  .`-    ' /  ;    '.   ,----,'    |
  |   :     ./  \___\/   \   ::  :       \  |    :  .  ;
  ;   | .'  /        \   :   |:  |   /\   \ ;    |.'  /
  `---' /  ;         /  /   / |  :  ' ;.   :`----'/  ;
    /  ;  /          \  \   \ |  |  ;/  \   \ /  ;  /
   ;  /  /--,    ___ /   :   |'  :  | \  \ ,';  /  /-,
  /  /  / .`|   /   /\   /   :|  |  '  '--' /  /  /.`|
./__;       :  / ,,/  ',-    .|  :  :     ./__;      :
|   :     .'   \ ''\        ; |  | ,'     |   :    .'
;   |  .'       \   \     .'  `--''       ;   | .'
`---'            `--`-,,-'                `---'

http://ascii.dtools.net/ ¿¡¼­ ±×¸² 

SAMPLE_TEXT;



$Z3A2_CODE =  z3a2::encode( $sample_text );
$re_sample_text = z3a2::decode( $Z3A2_CODE );


//print '<br>sample_text : ' . strlen( $sample_text );
//print '<br>Z3A2_CODE : ' . strlen( $Z3A2_CODE );
//print '<br>re_sample_text : ' . strlen( $re_sample_text );


print "<hr><b>¿øº» ÅؽºÆ®</b><pre>";
print wordwrap( $sample_text  , 80, "\n", 1 ); 

print "</pre><hr><b>Z3A2</b><p><code>";
print wordwrap( $Z3A2_CODE , 80, "<br>", 1 );  

print "</code><hr><b>º¹±¸ ÅؽºÆ®</b><pre>";
print wordwrap( $re_sample_text  , 80, "\n", 1 );  
print "</pre><hr>";


?>


3.3. ½ÇÇà°á°ú


´ÙÀ½Àº À§ »ùÇÃÇÁ·Î±×·¥ÀÇ ½ÇÇà°á°ú ÀÔ´Ï´Ù.

¿øº» ÅؽºÆ®
         ,----,  .--,-``-.
       .'   .`| /   /     '.     ,---,          ,----,
    .'   .'   ;/ ../        ;   '  .' \       .'   .' \
  ,---, '    .'\ ``\  .`-    ' /  ;    '.   ,----,'    |
  |   :     ./  \___\/   \   ::  :       \  |    :  .  ;
  ;   | .'  /        \   :   |:  |   /\   \ ;    |.'  /
  `---' /  ;         /  /   / |  :  ' ;.   :`----'/  ;
    /  ;  /          \  \   \ |  |  ;/  \   \ /  ;  /
   ;  /  /--,    ___ /   :   |'  :  | \  \ ,';  /  /-,
  /  /  / .`|   /   /\   /   :|  |  '  '--' /  /  /.`|
./__;       :  / ,,/  ',-    .|  :  :     ./__;      :
|   :     .'   \ ''\        ; |  | ,'     |   :    .'
;   |  .'       \   \     .'  `--''       ;   | .'
`---'            `--`-,,-'                `---'

http://ascii.dtools.net/ ¿¡¼­ ±×¸² 
Z3A2

OsePuWPuWPuWPuWpYYQBcQBcPVCQDUQBcQBCSXEQdaOsePuWPuWPuWQDUPuzPuWSwFPvQPVdPuWPVdPu
WPuWQDxPuWPuWpYYQBcpyePuWPuWPuWPuWPuWQBCQBcpyeOsePuWPuWpMPPuWQDUPuzPuWQGfQDUQfZP
uWPuWPuWPuWPVjPuWPuzQDUPuzPvAPuWPuWPuWpMPPuWQDUPuzoaMPuLpYYQBcpyepMIPuWPuWpMPPvA
SXEPvAQDUQbCPuWPuWPuzPVdqJUPuWPuWQDxPuWpYYQBcQBcpMOPuWPuWoBCPuLtNUPuWqgWPuWPuWQD
UPVdSmGSufSNlPVdPuWPvAPuWqHJPuWPVJPuWPuWPuWPvAtNUPuWPuWPVJQDUPuWoAvPuLqJUPuWtNUQ
DUPuzQfSPuWPuWPuWPuWPvAPuWPVJPuWqhQPuWPvQPuWSmnPuWSmGqJUPuWPuWQEOPuzQfSOsePuWQbC
QBcPuzPVdqJUPuWPuWPuWPuWQfSPuWPVdPuWPVdPvQqgWPuWPuzQdhPuWqgWQbCQBcpMoPVdqJUOsePu
WPuWPVdqJUPuWPVdPuWPuWPuWPuWSmGPuWPvAPuWPvAPvQtNUPuWQGfPuWPvAPuWPvAPVdqJUPuWoApP
uLPuWPVjQfSPuWQBdpyePuWPuWSufPvbPVdPuWPVJPuWpNCPuWPVJtNUSmGPuWPvApMOPVjQfSPuWQBd
oAOPuLQfSPuWPVdQfSQDUtOAPuWQfSPuWQfSPvAPuWPVdPuWtnHPuWPvQpMIPuWQazpMoQfSPuWPVdQf
SSwFoBCQDJSUhqjzPuWPuWPuWqgWPuWPVdpyEPVdpMIQBCPuWPuWtnBPuWPVJqgWPuWPuWQDUSUhqjzP
uWPuWPuWoAVtNJPuWqgWPuWPuWQDUPuzPuWPvApMlPvAPuWPuWPuWqJUtNUPuWPvQpMOPuWPuWtNUPuW
qgWPuWPuWpMPOsePVjPuWPvQQDUPuzPuWPuWPuWPvAPuWPvAPuWPuWpMPPuWQbCpMoPuzPuWPuWPuWPV
jPuWPvQpMPOseQbCQBcPuzPuWPuWPuWPuWPuWSWYQBcQbCpyEpMoPuWPuWPuWPuWPuWPuWPuWPuWQbCQ
BcoAlOzXspXTuAqhKQfzTrssTnQEeTUSTIhTrYTFDTUsPVdvbzWfAWnSwgrPWROse

º¹±¸ ÅؽºÆ®

         ,----,  .--,-``-.
       .'   .`| /   /     '.     ,---,          ,----,
    .'   .'   ;/ ../        ;   '  .' \       .'   .' \
  ,---, '    .'\ ``\  .`-    ' /  ;    '.   ,----,'    |
  |   :     ./  \___\/   \   ::  :       \  |    :  .  ;
  ;   | .'  /        \   :   |:  |   /\   \ ;    |.'  /
  `---' /  ;         /  /   / |  :  ' ;.   :`----'/  ;
    /  ;  /          \  \   \ |  |  ;/  \   \ /  ;  /
   ;  /  /--,    ___ /   :   |'  :  | \  \ ,';  /  /-,
  /  /  / .`|   /   /\   /   :|  |  '  '--' /  /  /.`|
./__;       :  / ,,/  ',-    .|  :  :     ./__;      :
|   :     .'   \ ''\        ; |  | ,'     |   :    .'
;   |  .'       \   \     .'  `--''       ;   | .'
`---'            `--`-,,-'                `---'

http://ascii.dtools.net/ ¿¡¼­ ±×¸² 


Replace original file
Rename if it already exist



sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2008-09-27 19:27:10
Processing time 0.0096 sec