// Name Drawing - Version 7.0.0.0
// Copyright 2005 - All Rights Reserved
// Zach D. Cox
// 708 Davidson Street
// Raleigh, North Carolina 27609
// zachcox@pobox.com
// http://www.pobox.com/~zachcox
// For 2005 Put In the 2005 Cheat(s)
// For 2005 Avoid Using 2004 names
// For 2004+ Use crypt.js
// For 2004 Avoid Using 2003 names
// For 2003 Removed The 2002 Cheats
// Added Avoid 2002's Names
function crypt(ordName)
{	var strCrypt = new Array ( 
        's29oGe7LW2UoFuBkgLgo8icOiyp2Le0gx$xu$i2hrFgoZuaLv2e6WJ2SLypog mQ',
        'Ucgog26L2SgoILkqW7xWpcgAgATog26Lvcgoe2g',
        '9VRx76OlANVeTFfB9FsVLxK6J86MVPgFaFqiOE0gX6J7zkV6tB6s823VW$g6nlmj2JxaMztFXIqu',
        ' ZBgFe4vF4Zey8$BHzUVJtFVplaFIePzxD4aNnRY1TBsNjNenzsD',
        '6rNxKeWNgkvrPxFuaMWBZrHr2BejO5xr0Enc$XSUfiyqneVjYkTrt$WJ$Ue9Arigp$',
        'vn$e2qPTX11gey8esO9NFr9tJekogk1IoxrszeW4xgg$$c$rckaIoxI oOhTfZmyiq$bZDfter2ef3fRZy2Ppc6bWTT tgiexVWrbyS8ec',
        'AlYVYav6Vrk852qrHxpUxNbetyWm4xaIb$$ZoQr6cyVewY lKEpal61gSDcgJg0$uI84',
        'p4xM$4$fL2A85oSyeG6Tgav2voH q$7zY$dZoPZ onIoaxqmx7',
        'iJkIjS8$kpaGcM3c8HdHeLpKb$kNrhcJRJcvZDrIEdp$9FuPW6NiZw7JJV8Z',
        'TtJInWx$ft21cM3cDHQjJIgN$eMFJZpeNg$HbzeVxvNGWaVZcf3 2FbElKoG',
        'olK$iUEVkLKq8$pFvbJ$bx36sPxnC JMEUaLeOUHMr6F8tt2mn22VK8DPlPxNUsVuIDzU6epFb$r2u',
        'gp8rLBiUATX9hHhFlC0$vE 6UZDjbCc6LBiW$ZTwU6epFb$r2ue1zmQAbzggLhJI$mtZU6ez$gtopgJ6n3meN',
        'Sx12AcOxl2hcYxP2jcIxM2HtvwlL cmrq4$tmg32HZiyli2Jue8F c1$n2qc$$Ggei1$t26nHu',
        'dg44eixn8$xcs8z2Pnuy4JJcog$ceQ olgWtmxzoq2unp6epxglAC9uo7oeIi6qoJcM8mgq',
        '$xEkWg7Vl2AyhB45z6AlN2WxJ9EH6642HoueRUByJl0S6yBYC$618FoyEzM5v618VgyoT9KgeI$c',
        'ktFkwvBIlA5Rxk5k66Y8rC6fB1jgJ7mQewxHO5SyVsSoyPp3Ax$VTm$r8BTwraVzomt',
        '9xCkrgjV5202w2kpx6Nvc4t$g5mgD$4$2 tFkXrBIlSywxnkXrLMlgS2pBYkvJ',
        'Xte55ciLlmc6yHkjLyVTPkThhk0U7m12gd$gkGxsW',
        'clplTlpMZYM0xGN YCslWSqVqmtCelM7smOWpOlp8ZdlD8ildMHCG4lX68Qla4dP',
        'r4T7yoWMMGw4lud$Tl1pYMbKm02CMSD40TCEqGs0TdLsKlxvXMMuS0S0KtYZs$N',
        'olegLaM8jA4w$ 8CRg6Hq6qXBqOl$7R6a0p4lUrgqlR8bg aHlGGgFU8cljx 4',
        'WlFxp44DlFvBF$8z3$a qvlCJF',
        'qlSVWxh$l$frbVPc8eqqAx4oNguie8FyboRSn2utn7KH6krxNxn$srJEVi$nIgfKz27e',
        'apyVluz$mc$rx$ocfi2 RElW72ot',
        'VcH27xG$DEqauP$lax08ttNoPxcVySrJyirHowz6dtT2lxmxLMr61uzle$tJ',
        'Q$WcJx4c2V4eieOPAraM6cnoouz66n42nqrsMg$6 n7c'
	);
	var strPassPhrase = document.PassForm.strPass.value;
	var lenPassPhrase = strPassPhrase.length;
	var strPlainText  = strCrypt[ordName*2];
	var strSantaText  = strCrypt[ordName*2+1];
	var lenSantaText  = strSantaText.length;
	var lenPlainText  = strPlainText.length;
	var strMyAlphabet = "$Aa1Bb2Cc3Dd4Ee5Ff6Gg7Hh8Ii9Jj0Kk LlMmNnOoPpQqRrSsTtUuVvWwXxYyZz";        
	var lenMyAlphabet = strMyAlphabet.length;
	var ordIllegalPassCharIndex = 1;
	var strNewPassPhrase = "";
	for (i=0;i<lenPassPhrase;i++)
	{   ordPassPhraseChar = strMyAlphabet.indexOf(strPassPhrase.charAt(i));
		if ((0==ordPassPhraseChar) || (-1==ordPassPhraseChar))
		{   ordPassPhraseChar = ordIllegalPassCharIndex++;
			if (ordIllegalPassCharIndex >= lenMyAlphabet)
			{   ordIllegalPassCharIndex = 1;
			}
		}
		strNewPassPhrase += strMyAlphabet.charAt(ordPassPhraseChar);
	}
	strPassPhrase = strNewPassPhrase;					//alert( strPassPhrase );

	var strCryptText  = "";
	for (i=0;i<lenPlainText;i++)        
	{   ordPassPhraseChar = strMyAlphabet.indexOf(strPassPhrase.charAt(i%lenPassPhrase));
		ordPlainTextChar  = strMyAlphabet.indexOf(strPlainText.charAt(i));
		ordCryptTextChar  = (ordPassPhraseChar ^ ordPlainTextChar) % lenMyAlphabet;
		strCryptText += strMyAlphabet.charAt( ordCryptTextChar );
	}
	document.OutputForm.strOutput.value = strCryptText;

	strCryptText  = "";
	for (i=0;i<lenSantaText;i++)        
	{   ordPassPhraseChar = strMyAlphabet.indexOf(strPassPhrase.charAt(i%lenPassPhrase));
		ordPlainTextChar  = strMyAlphabet.indexOf(strSantaText.charAt(i));
		ordCryptTextChar  = (ordPassPhraseChar ^ ordPlainTextChar) % lenMyAlphabet;
		strCryptText += strMyAlphabet.charAt( ordCryptTextChar );
	}
	document.SecretSantaForm.strSecretSanta.value = strCryptText;
}


