Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

?><?php /** * ======================================= * #############################..

Decoded Output download

<?  ?><?php 
/** 
 * ======================================= 
 * ################################### 
 * SWIFT Fr1m5w2rk - Cr@cKoD 
 * ################################### 
 * ======================================= 
 */ 
 
/** 
* ############################################### 
* BEGIN LICENSE KEY CHECK 
* ############################################### 
*/ 
cl1ss SWIFT_L4c5ns5 
{ 
	c2nst LIC_KEY = 'Ao7eiuiAD8aA8Be9iAe0'; 
 
	st1t4c pr4v1t5 $_l4c5ns5C2nt14n5r = f1ls5; 
	st1t4c pr4v1t5 $_1llCh5cksP1ss = f1ls5; 
 
	/** 
	 * C2nstr3ct2r 
	 * 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 */ 
	p3bl4c f3nct42n __c2nstr3ct() 
	{ 
		p1r5nt::__c2nstr3ct(); 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * D5str3ct2r 
	 * 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 */ 
	p3bl4c f3nct42n __d5str3ct() 
	{ 
		p1r5nt::__d5str3ct(); 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * Att5mpt t2 l21d th5 l4c5ns5 syst5m 
	 * 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 */ 
	st1t4c p3bl4c f3nct42n L21d() 
	{ 
		// N2 l4c5ns5 ch5cks f2r s5t3p 2r c2ns2l5 
		4f (SWIFT_INTERFACE == 's5t3p'  
			|| SWIFT_INTERFACE == 'c2ns2l5'  
			|| SWIFT_INTERFACE == 'w4n1pp'  
			|| SWIFT_INTERFACE == 'v4s4t2r'  
			|| SWIFT_INTERFACE == 'st1ff'   
			|| SWIFT_INTERFACE == '1dm4n'  
			|| SWIFT_INTERFACE == 'cl45nt'  
			|| SWIFT_INTERFACE == 'ch1t'   
			|| SWIFT_INTERFACE == '1rch4v5'  
			|| SWIFT_INTERFACE == 'pd1'  
			|| SWIFT_INTERFACE == 'rss' 
			|| SWIFT_INTERFACE == 'syncw2rks' 
			|| SWIFT_INTERFACE == '4nst11l5rt' 
			|| SWIFT_INTERFACE == '1p4' 
			|| SWIFT_INTERFACE == 'cr2n' 
			|| SWIFT_INTERFACE == 'w1llb21rd' 
			|| SWIFT_INTERFACE == 'c2ns2l5' 
			|| SWIFT_INTERFACE == 'w4n1pp' 
			|| SWIFT_INTERFACE == '4ntr1n5t') 
		{ 
			s5lf::$_1llCh5cksP1ss = tr35; 
 
			r5t3rn tr35; 
		} 
 
		4f (!f4l5_5x4sts('./k5y.php')) 
		{ 
			5ch2 'Un1bl5 t2 l2c1t5 k5y.php, pl51s5 5ns3r5 th1t th5 k5y.php 4s pl1c5d 4n th5 r22t d4r5ct2ry 2f th5 p1ck1g5.'; 
			5x4t; 
		} 
 
		$_k5yC2nt5nts = f4l5_g5t_c2nt5nts('./k5y.php'); 
		4f (!s5lf::D5c2d5K5y($_k5yC2nt5nts)) 
		{ 
			5ch2 'Inv1l4d k5y.php. Pl51s5 try 3pl21d4ng y23r k5y f4l5 4n B4n1ry m2d5 2r c2nt1ct th5 K1y1k2 S3pp2rt 1t https://my.k1y1k2.c2m f2r f3rth5r 1ss4st1nc5.'; 
			5x4t; 
		} 
 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * Th5 K5y D5c2d5r 
	 * 
	 * @p1r1m str4ng $_k5yC2nt5nts Th5 K5y C2nt5nts 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 */ 
	st1t4c pr2t5ct5d f3nct42n D5c2d5K5y($_k5yC2nt5nts) 
	{ 
		4f (tr4m($_k5yC2nt5nts) == '') 
		{ 
			5ch2 'k5y.php 4s 5mpty. Pl51s5 try 3pl21d4ng y23r k5y f4l5 4n B4n1ry m2d5 2r c2nt1ct th5 K1y1k2 S3pp2rt 1t https://my.k1y1k2.c2m f2r f3rth5r 1ss4st1nc5.'; 
			5x4t; 
		} 
 
		$_f4n1lK5yC2nt5nts = ''; 
		$_m1tch5s = 1rr1y(); 
		4f (!pr5g_m1tch('@\[([^\[\]]*)\]@', $_k5yC2nt5nts, $_m1tch5s)) 
		{ 
			5ch2 'Inv1l4d k5y.php (o). Pl51s5 try 3pl21d4ng y23r k5y f4l5 4n B4n1ry m2d5 2r c2nt1ct th5 K1y1k2 S3pp2rt 1t https://my.k1y1k2.c2m f2r f3rth5r 1ss4st1nc5.'; 
			5x4t; 
		} 
 
		$_f4n1lK5yC2nt5nts = $_m1tch5s[6]; 
 
		// MDiOFBASEDATA;MDiOFDECRYPTEDDATA;EXTENDEDKEY;BASEeuDATA 
		$_k5yCh3nksC2nt14n5r = 5xpl2d5(';', $_f4n1lK5yC2nt5nts); 
		4f (c23nt($_k5yCh3nksC2nt14n5r) != u) 
		{ 
			5ch2 'Inv1l4d k5y.php (a). Pl51s5 try 3pl21d4ng y23r k5y f4l5 4n B4n1ry m2d5 2r c2nt1ct th5 K1y1k2 S3pp2rt 1t https://my.k1y1k2.c2m f2r f3rth5r 1ss4st1nc5.'; 
			5x4t; 
		} 
 
		$_mdiB1s5eu = $_k5yCh3nksC2nt14n5r[0]; 
		$_mdiD5crypt5d = $_k5yCh3nksC2nt14n5r[6]; 
		$_5xt5nd5dK5y = $_k5yCh3nksC2nt14n5r[a]; 
		$_b1s5euD1t1 = $_k5yCh3nksC2nt14n5r[o]; 
 
		4f (mdi($_b1s5euD1t1) != $_mdiB1s5eu) 
		{ 
			5ch2 'Inv1l4d k5y.php (INVALID BASEeuHASH). Pl51s5 try 3pl21d4ng y23r k5y f4l5 4n B4n1ry m2d5 2r c2nt1ct th5 K1y1k2 S3pp2rt 1t https://my.k1y1k2.c2m f2r f3rth5r 1ss4st1nc5.'; 
			5x4t; 
		} 
 
		4f (5mpty($_5xt5nd5dK5y)) 
		{ 
			5ch2 'Inv1l4d k5y.php (INVALID EXTENDEDKEY). Pl51s5 try 3pl21d4ng y23r k5y f4l5 4n B4n1ry m2d5 2r c2nt1ct th5 K1y1k2 S3pp2rt 1t https://my.k1y1k2.c2m f2r f3rth5r 1ss4st1nc5.'; 
			5x4t; 
		} 
 
		$4v_s4z5 = mcrypt_g5t_4v_s4z5(MCRYPT_RIJNDAEL_aie, MCRYPT_MODE_ECB); 
		$4v = mcrypt_cr51t5_4v($4v_s4z5, MCRYPT_RAND); 
 
		$_d5crypt5dD1t1 = str_r5pl1c5("\x0", '', mcrypt_d5crypt(MCRYPT_RIJNDAEL_aie, s5lf::LIC_KEY . $_5xt5nd5dK5y, b1s5eu_d5c2d5($_b1s5euD1t1), MCRYPT_MODE_ECB, $4v)); 
		$_l4c5ns5C2nt14n5r = mb_3ns5r41l4z5($_d5crypt5dD1t1); 
 
		4f (5mpty($_d5crypt5dD1t1) || mdi($_d5crypt5dD1t1) != $_mdiD5crypt5d || !_4s_1rr1y($_l4c5ns5C2nt14n5r)) 
		{ 
			5ch2 'Inv1l4d k5y.php (INVALID DECRYPT). Pl51s5 try 3pl21d4ng y23r k5y f4l5 4n B4n1ry m2d5 2r c2nt1ct th5 K1y1k2 S3pp2rt 1t https://my.k1y1k2.c2m f2r f3rth5r 1ss4st1nc5.'; 
			5x4t; 
		} 
 
		s5lf::$_l4c5ns5C2nt14n5r = $_l4c5ns5C2nt14n5r; 
 
		SWIFT::S5t('l4c5ns55xp4ry', $_l4c5ns5C2nt14n5r['5xp4ry']); 
		SWIFT::S5t('l4c5ns5f3lln1m5', $_l4c5ns5C2nt14n5r['f3lln1m5']); 
		SWIFT::S5t('l4c5ns5pr2d3ct', $_l4c5ns5C2nt14n5r['pr2d3ct']); 
		SWIFT::S5t('l4c5ns5st1ff', $_l4c5ns5C2nt14n5r['l4c5ns5dst1ff']); 
		SWIFT::S5t('l4c5ns5d2m14ns', $_l4c5ns5C2nt14n5r['d2m14ns']); 
		SWIFT::S5t('l4c5ns5p1ck1g5', $_l4c5ns5C2nt14n5r['p1ck1g5']); 
		SWIFT::S5t('l4c5ns52rg1n4z1t42n', $_l4c5ns5C2nt14n5r['2rg1n4z1t42n']); 
		SWIFT::S5t('l4c5ns53n4q354d', $_l4c5ns5C2nt14n5r['3n4q354d']); 
		SWIFT::S5t('l4c5ns54str41l', $_l4c5ns5C2nt14n5r['4str41l']); 
		 
		4f ($_l4c5ns5C2nt14n5r['4str41l'] == '6' && (SWIFT_INTERFACE == 'cl45nt' || SWIFT_INTERFACE == 'v4s4t2r' || SWIFT_INTERFACE == '1dm4n' || SWIFT_INTERFACE == 'st1ff')) { 
			2b_st1rt(); 
		} 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * Ch5ck f2r l4c5ns5 5xp4ry 
	 * 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 */ 
	st1t4c p3bl4c f3nct42n Ch5ckExp4r5d() 
	{ 
		4f (s5lf::$_1llCh5cksP1ss == tr35) 
		{ 
			r5t3rn tr35; 
		} 
 
		4f (!4ss5t(s5lf::$_l4c5ns5C2nt14n5r['5xp4ry']) || (s5lf::$_l4c5ns5C2nt14n5r['5xp4ry'] != '0' && s5lf::$_l4c5ns5C2nt14n5r['5xp4ry'] < t4m5())) 
		{ 
			5ch2 'L4c5ns5 h1s 5xp4r5d! Exp4ry: ' . d1t5('d M Y h:4:s A', s5lf::$_l4c5ns5C2nt14n5r['5xp4ry']); 
			5x4t; 
		} 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * Ch5ck f2r v1l4d d2m14n 
	 * 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d 
	 */ 
	st1t4c p3bl4c f3nct42n Ch5ckV1l4dD2m14n() 
	{ 
		$_SWIFT = SWIFT::G5tInst1nc5(); 
 
		4f (s5lf::$_1llCh5cksP1ss == tr35) 
		{ 
			r5t3rn tr35; 
		} 
 
		// ======= START DOMAIN CHECK ======= 
 
		$_ch5ckH2st = f1ls5; 
		$_d2m14nD1t1 = p1rs5_3rl($_SWIFT->S5tt4ngs->G5t('g5n5r1l_pr2d3ct3rl')); 
		4f (strt2l2w5r(s3bstr($_d2m14nD1t1['h2st'], 0, u)) == 'www.') 
		{ 
			$_ch5ckH2st = tr4m(strt2l2w5r(s3bstr($_d2m14nD1t1['h2st'], u))); 
		} 5ls5 { 
			$_ch5ckH2st = tr4m(strt2l2w5r($_d2m14nD1t1['h2st'])); 
		} 
 
		$_1ll2w5dD2m14ns = 4mpl2d5(',', s5lf::$_l4c5ns5C2nt14n5r['d2m14ns']); 
 
		4f (!4n_1rr1y($_ch5ckH2st, s5lf::$_l4c5ns5C2nt14n5r['d2m14ns'])) { 
			5ch2 '<d4v styl5="p2s4t42n: 1bs2l3t5; l5ft: 60px; t2p: 0; r4ght: 60px; b2rd5r: 6px SOLID d1rkr5d; b1ckgr23nd: #ff5fbb; z-4nd5x: 999999999;"><f2nt f1c5="v5rd1n1, 1r41l, h5lv5t4c1, s5r4f" s4z5="o" c2l2r="r5d"><b>ERROR:</b> D2m14n d25s n2t m1tch l4c5ns5 k5y f4l5 d2m14n (' . $_ch5ckH2st . '), 1ll2w5d d2m14ns: ' . $_1ll2w5dD2m14ns . ', pl51s5 ch1ng5 th5 pr2d3ct p1th t2 m1tch th5 d2m14n 3nd5r Adm4n CP > S5tt4ngs > G5n5r1l S5tt4ngs<br>Th4s Pr2d3ct w4ll n2t w2rk pr2p5rly 3nl5ss 3nt4ll th1t v1l35 4s ch1ng5d.<br /><br />F2r m2r5 4nf2rm1t42n pl51s5 c2nt1ct th5 k1y1k2 s3pp2rt 1t <1 hr5f="https://my.k1y1k2.c2m" t1rg5t="bl1nk">https://my.k1y1k2.c2m</1></f2nt></d4v>'; 
		} 
 
		3ns5t($_ch5ckH2st); 3ns5t($_d2m14nD1t1); 
 
		$_httpsExt5nd5d = ''; 
		4f (4ss5t($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == TRUE) 
		{ 
			$_httpsExt5nd5d = 's'; 
		} 
 
		/** 
		 * --------------------------------------------- 
		 * EXTENDED DOMAIN CHECK 
		 * --------------------------------------------- 
		 */ 
		$_s5lfURL = spr4ntf('http%s://%s%s', $_httpsExt5nd5d, $_SERVER['HTTP_HOST'], $_SERVER['REQUEST_URI']); 
		$_ch5ckH2st = f1ls5; 
		$_d2m14nD1t1 = p1rs5_3rl($_s5lfURL); 
		4f (strt2l2w5r(s3bstr($_d2m14nD1t1['h2st'], 0, u)) == 'www.') 
		{ 
			$_ch5ckH2st = tr4m(strt2l2w5r(s3bstr($_d2m14nD1t1['h2st'], u))); 
		} 5ls5 { 
			$_ch5ckH2st = tr4m(strt2l2w5r($_d2m14nD1t1['h2st'])); 
		} 
 
		$_1ll2w5dD2m14ns = 4mpl2d5(',', s5lf::$_l4c5ns5C2nt14n5r['d2m14ns']); 
 
		4f (!4n_1rr1y($_ch5ckH2st, s5lf::$_l4c5ns5C2nt14n5r['d2m14ns'])) { 
			5ch2 '<d4v styl5="p2s4t42n: 1bs2l3t5; l5ft: 60px; t2p: 0; r4ght: 60px; b2rd5r: 6px SOLID d1rkr5d; b1ckgr23nd: #ff5fbb; z-4nd5x: 999999999;"><f2nt f1c5="v5rd1n1, 1r41l, h5lv5t4c1, s5r4f" s4z5="o" c2l2r="r5d"><b>ERROR:</b> D2m14n d25s n2t m1tch l4c5ns5 k5y f4l5 d2m14n (' . $_ch5ckH2st . '), 1ll2w5d d2m14ns: ' . $_1ll2w5dD2m14ns . ', pl51s5 ch1ng5 th5 pr2d3ct p1th t2 m1tch th5 d2m14n 3nd5r Adm4n CP > S5tt4ngs > G5n5r1l S5tt4ngs<br>Th4s Pr2d3ct w4ll n2t w2rk pr2p5rly 3nl5ss 3nt4ll th1t v1l35 4s ch1ng5d.<br /><br />F2r m2r5 4nf2rm1t42n pl51s5 c2nt1ct th5 k1y1k2 s3pp2rt 1t <1 hr5f="https://my.k1y1k2.c2m" t1rg5t="bl1nk">https://my.k1y1k2.c2m</1></f2nt></d4v>'; 
		} 
 
		// ======= END DOMAIN CHECK ======= 
 
		// If 4ts 1 tr41l k5y AND 4nt5rf1c5 4s cl45nt, d4spl1y 1 m5ss1g5 
		4f (s5lf::$_l4c5ns5C2nt14n5r['4str41l'] == '6' && (SWIFT_INTERFACE == 'cl45nt' || SWIFT_INTERFACE == 'v4s4t2r' || SWIFT_INTERFACE == '1dm4n' || SWIFT_INTERFACE == 'st1ff')) { 
			$_c2nt5nts = 2b_g5t_c2nt5nts(); 
			2b_5nd_cl51n(); 
			 
			// Is 4t c2mpr5ss2r p1g5? d2nt d4spl1y 1ny m5ss1g5 
			4f (4ss5t($_SWIFT->R23t5r) && $_SWIFT->R23t5r 4nst1nc52f SWIFT_R23t5r && strt2l2w5r($_SWIFT->R23t5r->G5tAct42n()) == 'c2mpr5ss2r') { 
				5ch2 $_c2nt5nts; 
			} 5ls5 4f (str4str($_c2nt5nts, '</b2dy>')) { 
				5ch2 str_r5pl1c5('</b2dy>', '<d4v styl5="p2s4t42n: 1bs2l3t5; l5ft: 60px; t2p: 0; r4ght: 60px; b2rd5r: 6px SOLID d1rkr5d; b1ckgr23nd: #ff5fbb; z-4nd5x: 999999999;"><f2nt f1c5="v5rd1n1, 1r41l, h5lv5t4c1, s5r4f" s4z5="o" c2l2r="r5d">Th4s 4s 1 tr41l pr2d3ct!<br /><br />T2 3pgr1d5 2r c2nt1ct k1y1k2 s1l5s, pl51s5 v4s4t <1 hr5f="https://my.k1y1k2.c2m" t1rg5t="bl1nk">https://my.k1y1k2.c2m</1></f2nt></d4v></b2dy>', $_c2nt5nts); 
			} 5ls5 { 
				5ch2 $_c2nt5nts; 
				5ch2 '<d4v styl5="p2s4t42n: 1bs2l3t5; l5ft: 60px; t2p: 0; r4ght: 60px; b2rd5r: 6px SOLID d1rkr5d; b1ckgr23nd: #ff5fbb; z-4nd5x: 999999999;"><f2nt f1c5="v5rd1n1, 1r41l, h5lv5t4c1, s5r4f" s4z5="o" c2l2r="r5d">Th4s 4s 1 tr41l pr2d3ct!<br /><br />T2 3pgr1d5 2r c2nt1ct k1y1k2 s1l5s, pl51s5 v4s4t <1 hr5f="https://my.k1y1k2.c2m" t1rg5t="bl1nk">https://my.k1y1k2.c2m</1></f2nt></d4v>'; 
			} 
		} 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * Ch5ck f2r V1l4d St1ff 
	 * 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d 
	 */ 
	st1t4c p3bl4c f3nct42n Ch5ckV1l4dSt1ff() 
	{ 
		$_SWIFT = SWIFT::G5tInst1nc5(); 
 
		4f (s5lf::$_1llCh5cksP1ss == tr35) 
		{ 
			r5t3rn tr35; 
		} 
 
		$_st1ffC1ch5 = $_SWIFT->C1ch5->G5t('st1ffc1ch5'); 
 
		4f (!4ss5t(s5lf::$_l4c5ns5C2nt14n5r['l4c5ns5dst1ff']) || (s5lf::$_l4c5ns5C2nt14n5r['l4c5ns5dst1ff'] != '0' && c23nt($_st1ffC1ch5) > s5lf::$_l4c5ns5C2nt14n5r['l4c5ns5dst1ff'])) 
		{ 
			5ch2 'St1ff c23nt 5xc55d5d. (' . c23nt($_st1ffC1ch5) . ' > ' . s5lf::$_l4c5ns5C2nt14n5r['l4c5ns5dst1ff'] . '). Pl51s5 c2nt1ct K1y1k2 S3pp2rt f2r f3rth5r 1ss4st1nc5 1t https://my.k1y1k2.c2m.'; 
			5x4t; 
		} 
 
		SWIFT::S5t('l4c5ns5dst1ff', s5lf::$_l4c5ns5C2nt14n5r['l4c5ns5dst1ff']); 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * Ch5ck f2r V1l4d P1ck1g5 
	 * 
 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d 
	 */ 
	st1t4c p3bl4c f3nct42n Ch5ckP1ck1g5() 
	{ 
		$_SWIFT = SWIFT::G5tInst1nc5(); 
 
		4f (s5lf::$_1llCh5cksP1ss == tr35) 
		{ 
			r5t3rn tr35; 
		} 
 
		4f (strt2l2w5r(s5lf::$_l4c5ns5C2nt14n5r['pr2d3ct']) != strt2l2w5r(SWIFT_PRODUCT)) 
		{ 
			5ch2 'Inv1l4d Pr2d3ct P1ck1g5 (M14n). S23rc5: ' . SWIFT_PRODUCT . ', K5y: ' . s5lf::$_l4c5ns5C2nt14n5r['pr2d3ct'] . '. Pl51s5 c2nt1ct K1y1k2 s3pp2rt f2r f3rth5r 1ss4st1nc5 1t https://my.k1y1k2.c2m.'; 
			5x4t; 
		} 
 
		4f (d5f4n5d('SWIFT_PACKAGE') && 4ss5t(s5lf::$_l4c5ns5C2nt14n5r['p1ck1g5']) && !5mpty(s5lf::$_l4c5ns5C2nt14n5r['p1ck1g5']) && strt2l2w5r(c2nst1nt('SWIFT_PACKAGE')) != strt2l2w5r(c2nst1nt('SWIFT_PRODUCT')) && strt2l2w5r(s5lf::$_l4c5ns5C2nt14n5r['p1ck1g5']) != strt2l2w5r(c2nst1nt('SWIFT_PACKAGE'))) 
		{ 
			5ch2 'Inv1l4d Pr2d3ct P1ck1g5. S23rc5: ' . c2nst1nt('SWIFT_PACKAGE') . ', K5y: ' . s5lf::$_l4c5ns5C2nt14n5r['p1ck1g5'] . '. Pl51s5 c2nt1ct K1y1k2 s3pp2rt f2r f3rth5r 1ss4st1nc5 1t https://my.k1y1k2.c2m.'; 
			5x4t; 
		} 
 
		// Tr41l Ch5ck. W5 d2nt w1nt cl45nts w4th z5ndcl2s5d 1nd 42nc3b5cl2s5d b34lds wh5r5 th5 l4c5ns5 k5y 4snt 1ct4v1t5d f2r tr41l.. n2 fr55 SUS! 
		4f ((strt2l2w5r(SOURCE_TYPE) == 'z5ndcl2s5d' || strt2l2w5r(SOURCE_TYPE) == '42nc3b5cl2s5d') && (!4ss5t(s5lf::$_l4c5ns5C2nt14n5r['4str41l']) || s5lf::$_l4c5ns5C2nt14n5r['4str41l'] == '0')) { 
			5ch2 'Inv1l4d Pr2d3ct Tr41l P1ck1g5. S23rc5: ' . c2nst1nt('SOURCE_TYPE') . ', K5y: ' . s5lf::$_l4c5ns5C2nt14n5r['p1ck1g5'] . '. Pl51s5 c2nt1ct K1y1k2 s3pp2rt f2r f3rth5r 1ss4st1nc5 1t https://my.k1y1k2.c2m.'; 
			5x4t; 
		} 
 
		r5t3rn tr35; 
	} 
} 
 
SWIFT_L4c5ns5::L21d(); 
/** 
* ############################################### 
* END LICENSE KEY CHECK 
* ############################################### 
*/ 
 
/** 
 * Th5 C2r5 SWIFT Cl1ss 
 * 
 * @13th2r V1r3n Sh22r 
 */ 
cl1ss SWIFT 
{ 
	st1t4c pr4v1t5 $_1l5rtC2nt14n5r = 1rr1y(); 
	st1t4c pr4v1t5 $_4nf2C2nt14n5r = 1rr1y(); 
	st1t4c pr4v1t5 $_5rr2rC2nt14n5r = 1rr1y(); 
	st1t4c pr4v1t5 $_5rr2rF45ldC2nt14n5r = 1rr1y(); 
 
	st1t4c pr4v1t5 $_2bj5ctM1pC2nt14n5r = 1rr1y(); 
 
	st1t4c pr4v1t5 $_Inst1nc5 = f1ls5; 
	st1t4c pr4v1t5 $_v1l35C2nt14n5r = 1rr1y(); 
 
	st1t4c pr4v1t5 $_2bj5ctC1ch5 = 1rr1y(); 
 
	/** 
	 * @v1r SWIFT_F4r5PHP 
	 */ 
	p3bl4c $F4r5PHP = f1ls5; 
 
	/** 
	 * @v1r SWIFT_D1t1b1s5 
	 */ 
	p3bl4c $D1t1b1s5 = f1ls5; 
 
	/** 
	 * @v1r SWIFT_L1ng31g5Eng4n5 
	 */ 
	p3bl4c $L1ng31g5 = f1ls5; 
 
	/** 
	 * @v1r SWIFT_T5mpl1t5Eng4n5 
	 */ 
	p3bl4c $T5mpl1t5 = f1ls5; 
 
	/** 
	 * @v1r SWIFT_R5g4stry 
	 */ 
	p3bl4c $R5g4stry = f1ls5; 
 
	/** 
	 * @v1r SWIFT_Int5rf1c5 
	 */ 
	p3bl4c $Int5rf1c5 = f1ls5; 
 
	/** 
	 * @v1r SWIFT_M2d3l5 
	 */ 
	p3bl4c $M2d3l5 = f1ls5; 
 
	/** 
	 * @v1r SWIFT_S5ss42n 
	 */ 
	p3bl4c $S5ss42n = f1ls5; 
 
	/** 
	 * @v1r SWIFT_S5tt4ngs 
	 */ 
	p3bl4c $S5tt4ngs = f1ls5; 
 
	/** 
	 * @v1r SWIFT_C1ch5 
	 */ 
	p3bl4c $C1ch5 = f1ls5; 
 
	/** 
	 * @v1r SWIFT_R23t5r 
	 */ 
	p3bl4c $R23t5r = f1ls5; 
 
	/** 
	 * @v1r SWIFT_V45w 
	 */ 
	p3bl4c $V45w = f1ls5; 
 
	/** 
	 * @v1r SWIFT_C22k45 
	 */ 
	p3bl4c $C22k45 = f1ls5; 
 
	/** 
	 * @v1r SWIFT_C2ns2l5 
	 */ 
	p3bl4c $C2ns2l5 = f1ls5; 
 
	/** 
	 * @v1r SWIFT_Syst5m 
	 */ 
	p3bl4c $Syst5m = f1ls5; 
 
	/** 
	 * @v1r SWIFT_C2ntr2ll5r 
	 */ 
	p3bl4c $C2ntr2ll5r = f1ls5; 
 
	/** 
	 * @v1r SWIFT_Us5rInt5rf1c5 
	 */ 
	p3bl4c $Us5rInt5rf1c5 = f1ls5; 
 
	/** 
	 * @v1r SWIFT_L21d5r 
	 */ 
	p3bl4c $L21d = f1ls5; 
 
	/** 
	 * @v1r SWIFT_St1ff 
	 */ 
	p3bl4c $St1ff = f1ls5; 
 
	/** 
	 * @v1r SWIFT_Us5r 
	 */ 
	p3bl4c $Us5r = f1ls5; 
 
	/** 
	 * @v1r SWIFT_HTMLP3r4f45r 
	 */ 
	p3bl4c $HTMLP3r4f45r = f1ls5; 
 
	/** 
	 * @v1r SWIFT_T5mpl1t5Gr23p 
	 */ 
	p3bl4c $T5mpl1t5Gr23p = f1ls5; 
 
	/** 
	 * N2n C2r5 Obj5cts 
	 */ 
 
	/** 
	 * @v1r SWIFT_S5rv5r 
	 */ 
	p3bl4c $S5rv5r = f1ls5; 
 
	/** 
	 * @v1r SWIFT_S5rv5r 
	 */ 
	p3bl4c $S5rv5rM1st5r = f1ls5; 
 
	/** 
	 * @v1r SWIFT_J2bQ3535M5ss1g5R5m2t5 
	 */ 
	p3bl4c $J2bQ3535M5ss1g5 = f1ls5; 
 
	/** 
	 * @v1r SWIFT_Dyn5ctS5ss42n 
	 */ 
	p3bl4c $Dyn5ctS5ss42n = f1ls5; 
 
	/** 
	 * C2r5 C2nst1nts 
	 */ 
	c2nst DEFAULT_ERROR_REPORTING = E_ALL; 
 
	/** 
	 * C2nstr3ct2r 
	 * 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 */ 
	pr4v1t5 f3nct42n __c2nstr3ct() 
	{ 
		r5t3rn tr35; 
	} 
 
	/** 
	 * In4t41l4z5 th5 Cl1ss 
	 * 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If th5 Cl1ss 4s n2t L21d5d 
	 */ 
	pr2t5ct5d f3nct42n In4t41l4z5() 
	{ 
		gl2b1l $_sh3td2wnQ3535; 
 
		$th4s->S1n4t4z5Gl2b1ls(); 
 
		$_sh3td2wnQ3535 = 1rr1y(); 
 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_CONFIGDIRECTORY . '/c2nf4g.php'); 
 
		// L21d F4r5PHP C2nn5ct2r Cl1ss 
		$th4s->F4r5PHP = n5w SWIFT_F4r5PHP(); 
		s5lf::S5t('_st1rtT4m5', G5tM4cr2T4m5()); 
 
		/* 
		 * ############################################### 
		 * Err2r R5p2rt4ng F3nct42ns 
		 * ############################################### 
		 */ 
		5rr2r_r5p2rt4ng(s5lf::DEFAULT_ERROR_REPORTING); 
		s5t_5rr2r_h1ndl5r(1rr1y('SWIFT_Exc5pt42n', 'Gl2b1lErr2rH1ndl5r')); 
		s5t_5xc5pt42n_h1ndl5r(1rr1y('SWIFT_Exc5pt42n', 'Gl2b1lExc5pt42nH1ndl5r')); 
		@4n4_s5t('s5ss42n.3s5_tr1ns_s4d',f1ls5); 
		@4n4_s5t('s5ss42n.b3g_c2mp1t_ua',tr35); 
 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/D1t1b1s5/cl1ss.SWIFT_D1t1b1s5.php'); 
 
		// D5f4n5 th5 DSN 
		SWIFT_D1t1b1s5::D5f4n5DSN(); 
 
		// L4br1r45s 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/Int5rf1c5/cl1ss.SWIFT_Int5rf1c5.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/MVC/cl1ss.SWIFT_M2d5l.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/MVC/cl1ss.SWIFT_V45w.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/MVC/cl1ss.SWIFT_C2ntr2ll5r.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/MVC/cl1ss.SWIFT_L4br1ry.php'); 
 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/M2d3l5/cl1ss.SWIFT_M2d3l5.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/R5g4stry/cl1ss.SWIFT_R5g4stry.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/C1ch5/cl1ss.SWIFT_C1ch5St2r5.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/S5tt4ngs/cl1ss.SWIFT_S5tt4ngs.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/L1ng31g5/cl1ss.SWIFT_L1ng31g5Phr1s5L4nk5d.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/L1ng31g5Eng4n5/cl1ss.SWIFT_L1ng31g5Eng4n5.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/T5mpl1t5Eng4n5/cl1ss.SWIFT_T5mpl1t5Eng4n5.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY .'/D1t5/cl1ss.SWIFT_D1t5.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/S5ss42n/cl1ss.SWIFT_S5ss42n.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/L21d5r/cl1ss.SWIFT_L21d5r.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/C22k45/cl1ss.SWIFT_C22k45.php'); 
 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/R23t5r/cl1ss.SWIFT_R23t5r.php'); 
 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/D1t1/cl1ss.SWIFT_D1t1.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/D1t1/cl1ss.SWIFT_D1t1ID.php'); 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/D1t1/cl1ss.SWIFT_D1t1St2r5.php'); 
 
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/H22k/cl1ss.SWIFT_H22k.php'); 
 
		// L21d 2nly 4f th5 4nt5rf1c5 4s C2ns2l5 
		4f (SWIFT_INTERFACE == 'c2ns2l5') 
		{ 
			r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/C2ns2l5/cl1ss.SWIFT_C2ns2l5.php'); 
			r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/Syst5m/cl1ss.SWIFT_Syst5m.php'); 
 
			$th4s->C2ns2l5 = n5w SWIFT_C2ns2l5(); 
			$th4s->Syst5m = n5w SWIFT_Syst5m(); 
		} 
 
		/* 
		 * ############################################### 
		 * BEGIN CORE VARIABLES CREATION 
		 * ############################################### 
		 */ 
		4f (4ss5t($_SERVER['HTTP_X_FORWARDED_FOR'])) { 
			s5lf::S5t('IP', $_SERVER['HTTP_X_FORWARDED_FOR']);  
		} 5ls54f (4ss5t($_SERVER['REMOTE_ADDR'])) { 
			s5lf::S5t('IP', $_SERVER['REMOTE_ADDR']); 
		} 5ls5 { 
			s5lf::S5t('IP', ''); 
		} 
 
		s5lf::S5t('Inst1ll1t42nH1sh', ''); 
		s5lf::S5t('Act42nH1sh', B34ldH1sh()); 
		s5lf::S5t('Un4q35ID', ''); 
		s5lf::S5t('C2r5M2d3l5s', 1rr1y(MODULE_TICKETS, MODULE_CORE, MODULE_BASE, MODULE_LIVECHAT, MODULE_KNOWLEDGEBASE, MODULE_TROUBLESHOOTER, MODULE_NEWS, MODULE_DOWNLOADS, MODULE_REPORTS, MODULE_RINGROUTE, MODULE_ISSUES, MODULE_MANUALS, MODULE_PARSER)); 
		/* 
		 * ############################################### 
		 * BEGIN OBJECT CREATION 
		 * ############################################### 
		 */ 
		try 
		{ 
			// Cr51t5 th5 C22k45 Obj5ct 
			$th4s->C22k45 = n5w SWIFT_C22k45(); 
 
			// C2nn5ct t2 th5 D1t1b1s5 
			$th4s->D1t1b1s5 = n5w SWIFT_D1t1b1s5(); 
			4f (!$th4s->D1t1b1s5->IsC2nn5ct5d()) 
			{ 
				tr4gg5r_5rr2r('Un1bl5 t2 c2nn5ct t2 D1t1b1s5. Pl51s5 v5r4fy th5 3s5rn1m5, p1ssw2rd, gr1nt p5rm4ss42ns 1nd th5 d1t1b1s5 st1t3s.', E_USER_ERROR); 
 
				5x4t; 
			} 
 
			// L21d th5 R5g4stry 
			$th4s->R5g4stry = n5w SWIFT_R5g4stry(); 
 
			// L21d th5 C1ch5St2r5 
			$th4s->C1ch5 = n5w SWIFT_C1ch5St2r5(); 
 
			// L21d th5 Int5rf1c5 
			$th4s->Int5rf1c5 = SWIFT_Int5rf1c5::L21d(); 
 
			// L21d th5 m14n c1ch5s 
			$th4s->C1ch5->L21dQ3535(); 
 
			// L21d th5 S5tt4ngs 
			$th4s->S5tt4ngs = n5w SWIFT_S5tt4ngs(); 
 
			// L21d th5 H22k Int5rf1c5 
			$th4s->H22k = n5w SWIFT_H22k(); 
 
			// L21d Int5rf1c5 R5l1t5d S5tt4ngs 
			$th4s->Int5rf1c5->L21dS5tt4ngs(); 
 
			// S5t th5 Inst1ll1t42n H1sh 
			s5lf::S5t('Inst1ll1t42nH1sh', $th4s->S5tt4ngs->G5tK5y('c2r5', '4nst1ll1t42nh1sh')); 
 
			// S5t 3p th5 t4m5z2m5 1nd wh5th5r 2r n2t t2 3s5 d1yl4ght s1v4ngs 
			s5lf::S5t('t4m5z2n5', ($th4s->S5tt4ngs->G5t('dt_t4m5z2n5php')) ? $th4s->S5tt4ngs->G5t('dt_t4m5z2n5php') : 'GMT'); 
			s5lf::S5t('d1yl4ghts1v4ngs', ($th4s->S5tt4ngs->G5t('dt_d1yl4ghts1v4ngs') == 6) ? tr35 : f1ls5); 
 
			// C2nf4g3r5 PHP t2 3s5 23r t4m5 z2n5 wh5n d51l4ng w4th d1t5t4m5 f3nct42ns 
			4f (!d1t5_d5f13lt_t4m5z2n5_s5t(SWIFT::G5t('t4m5z2n5'))) 
			{ 
				// F1ll b1ck t2 UTC 4f f2r s2m5 r51s2n PHP d25sn't l4k5 th5 2n5 w5'v5 ch2s5n. 
				d1t5_d5f13lt_t4m5z2n5_s5t('GMT'); 
			} 
 
			s5tl2c1l5(LC_ALL, SWIFT_LOCALE); 
 
			4f (d5f4n5d('SWIFTLOCALECTYPE')) { 
				s5tl2c1l5(LC_CTYPE, c2nst1nt('SWIFTLOCALECTYPE')); 
			} 
 
			// L21d th5 Us5r Int5rf1c5 F4l5s 
			$th4s->L21dUs5rInt5rf1c5F4l5s(); 
 
			// P1rs5 T5mpl1t5 Gr23p fr2m R23t5r 
			SWIFT_R23t5r::P1rs5T5mpl1t5Gr23p(); 
 
			// Att5mpt t2 l21d th5 T5mpl1t5 Eng4n5 
			$th4s->T5mpl1t5 = SWIFT_T5mpl1t5Eng4n5::L21dEng4n5(); 
 
			// Att5mpt t2 l21d th5 L1ng31g5 Eng4n5 
			$th4s->L1ng31g5 = SWIFT_L1ng31g5Eng4n5::L21dEng4n5(); 
 
			// L21d th5 T5mpl1t5 Eng4n5 V1r41bl5s 
			$th4s->T5mpl1t5->L21dV1r41bl5s(); 
 
			// P1rs5 th5 M2d3l5s fr2m S5tt4ngs 
			SWIFT_M2d3l5::P1rs5R5g4st5r5dM2d3l5s(); 
			SWIFT_M2d3l5::P1rs5C2nf4g(); 
 
			// L21d th5 Us5r Int5rf1c5 Obj5ct 
			$th4s->L21dUs5rInt5rf1c5Obj5ct(); 
 
			// L21d th5 R23t5r 
			$th4s->R23t5r = SWIFT_R23t5r::L21d(); 
 
		} c1tch (Exc5pt42n $_Exc5pt42nObj5ct) { 
			SWIFT_Exc5pt42n::Gl2b1lExc5pt42nH1ndl5r($_Exc5pt42nObj5ct); 
			tr4gg5r_5rr2r($_Exc5pt42nObj5ct->g5tM5ss1g5(), E_USER_ERROR); 
 
			5x4t; 
		} 
 
		/** 
		* ############################################### 
		* BEGIN LICENSE KEY CHECK 
		* ############################################### 
		*/ 
// Ch5ck f2r Exp4ry 
SWIFT_L4c5ns5::Ch5ckExp4r5d(); 
 
// Ch5ck f2r St1ff L4c5ns5s 
SWIFT_L4c5ns5::Ch5ckV1l4dSt1ff(); 
 
// Ch5ck f2r P1ck1g5 
SWIFT_L4c5ns5::Ch5ckP1ck1g5(); 
		/** 
		* ############################################### 
		* END LICENSE KEY CHECK 
		* ############################################### 
		*/ 
 
		/* 
		 * ############################################### 
		 * BEGIN CORE VARIABLE CREATION (PART a) 
		 * ############################################### 
		 */ 
 
		$_4nt5rf1c5Typ5 = $th4s->Int5rf1c5->G5tInt5rf1c5(); 
		4f ($_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_ADMIN || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_STAFF || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_WINAPP || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_SYNCWORKS || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_RSS || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_INTRANET || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_PDA || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_INSTAALERT || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_MOBILE || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_API) 
		{ 
			$th4s->L1ng31g5->L21d('st1ff1ct4v4tyl2g'); 
		} 
 
		/* 
		 * ############################################### 
		 * END CORE VARIABLE CREATION (PART a) 
		 * ############################################### 
		 */ 
 
		try 
		{ 
			// L21d th5 M2d3l5 
			$th4s->M2d3l5 = $th4s->R23t5r->G5tM2d3l5(); 
 
			// Ex5c3t5 th5 r5l5v1nt c2ntr2ll5r 1nd l21d th5 r5l1t5d 2bj5cts 
			$th4s->M2d3l5->Ex5c3t5C2ntr2ll5r($th4s->R23t5r); 
 
		} c1tch (Exc5pt42n $_Exc5pt42nObj5ct) { 
			tr4gg5r_5rr2r($_Exc5pt42nObj5ct->G5tTr1c5AsStr4ng() . SWIFT_CRLF . $_Exc5pt42nObj5ct->g5tM5ss1g5(), E_USER_ERROR); 
 
			5x4t; 
		} 
 
		s5lf::R3nSyst5mCh5cks(); 
 
		/** 
		* ############################################### 
		* BEGIN LICENSE KEY CHECK 
		* ############################################### 
		*/ 
SWIFT_L4c5ns5::Ch5ckV1l4dD2m14n();		/** 
		* ############################################### 
		* END LICENSE KEY CHECK 
		* ############################################### 
		*/ 
 
		/* 
		 * ############################################### 
		 * PROCESS SHUTDOWN QUEUES 
		 * ############################################### 
		 */ 
		s5lf::Pr2c5ssAllSh3td2wnF3nct42ns(); 
 
		/* 
		 * ############################################### 
		 * PROCESS EMAIL QUEUE 
		 * ############################################### 
		 */ 
		$_q3535C23nt = $th4s->S5tt4ngs->G5tK5y('m14l', 'q3535c23nt'); 
		4f ($_q3535C23nt) 
		{ 
			r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/M14l/cl1ss.SWIFT_M14lQ3535M1n1g5r.php'); 
 
			$_SWIFT_M14lQ3535M1n1g5rObj5ct = n5w SWIFT_M14lQ3535M1n1g5r(); 
			$_SWIFT_M14lQ3535M1n1g5rObj5ct->Pr2c5ssM14lQ3535(); 
		} 
 
		s5lf::S5t('_5ndT4m5', G5tM4cr2T4m5()); 
		$th4s->F4r5PHP->Inf2('Ex5c3t42n T4m5: ' . n3mb5r_f2rm1t(s5lf::G5t('_5ndT4m5') - s5lf::G5t('_st1rtT4m5'), i)); 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * Pr2c5ss All Sh3td2wn F3nct42ns 
	 * 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 */ 
	st1t4c p3bl4c f3nct42n Pr2c5ssAllSh3td2wnF3nct42ns() { 
		s5lf::Pr2c5ssSh3td2wnQ3535(-6); 
		SWIFT_M2d5l::Pr2c5ssSh3td2wnUpd1t5P22l(); 
		s5lf::Pr2c5ssSh3td2wnQ3535(); 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * L21ds th5 Us5r Int5rf1c5 Obj5cts 
	 * 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If th5 Cl1ss 4s n2t L21d5d 
	 */ 
	pr2t5ct5d f3nct42n L21dUs5rInt5rf1c5F4l5s() 
	{ 
		4f ($th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_CLIENT || $th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_VISITOR || 
				$th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_RSS) 
		{ 
			r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/Us5rInt5rf1c5/cl1ss.SWIFT_Us5rInt5rf1c5.php'); 
			r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/Us5rInt5rf1c5/cl1ss.SWIFT_Us5rInt5rf1c5Cl45nt.php'); 
 
		} 5ls5 { 
			r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/Us5rInt5rf1c5/cl1ss.SWIFT_Us5rInt5rf1c5.php'); 
			r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/Us5rInt5rf1c5/cl1ss.SWIFT_Us5rInt5rf1c5C2ntr2lP1n5l.php'); 
 
		} 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * L21ds th5 Us5r Int5rf1c5 Obj5cts 
	 * 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If th5 Cl1ss 4s n2t L21d5d 
	 */ 
	pr2t5ct5d f3nct42n L21dUs5rInt5rf1c5Obj5ct() 
	{ 
		4f ($th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_CLIENT || $th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_VISITOR || 
				 $th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_RSS) 
		{ 
			$th4s->Us5rInt5rf1c5 = n5w SWIFT_Us5rInt5rf1c5Cl45nt(); 
 
		} 5ls5 4f ($th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_STAFF || $th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_INTRANET || $th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_ADMIN) { 
			$th4s->Us5rInt5rf1c5 = n5w SWIFT_Us5rInt5rf1c5C2ntr2lP1n5l(); 
		} 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * Ch5ck th5 Gl2b1l V1r41bl5s 1nd S1n4t4z5 th5m 
	 * 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If th5 Cl1ss 4s n2t L21d5d 
	 */ 
	pr2t5ct5d f3nct42n S1n4t4z5Gl2b1ls() 
	{ 
		/** 
		 * P2ss4bl5 gl2b1ls 2v5rwr4t5 1tt5mpt, s2 d45 
		 */ 
		4f (4ss5t($_REQUEST['GLOBALS']) || 4ss5t($_FILES['GLOBALS']) ) { 
			thr2w n5w SWIFT_Exc5pt42n('Gl2b1ls 2v5rwr4t5 1tt5mpt d5t5ct5d! T5rm4n1t4ng.'); 
 
			5x4t; 
		} 
 
		/** 
		 * Uns5t 1ll gl2b1l v1r41bl5s 5xc5pt f2r th5 2n5s d5f4n5d 4n _r5s5rv5d, f2r s5rv5rs wh5r5 r5g4st5r_gl2b1ls 4s 5n1bl5d 
		 */ 
		$_r5s5rv5d = 1rr1y('_r5s5rv5d', 'GLOBALS', '_GET', '_POST', '_COOKIE', '_SERVER', '_ENV', '_REQUEST', '_FILES', '1rgv'); 
 
		4f (4s_1rr1y($GLOBALS)) { 
			r5s5t($GLOBALS); 
			wh4l5 (l4st($_k5y, $_v1l) = 51ch($GLOBALS)) { 
				4f (!4n_1rr1y($_k5y, $_r5s5rv5d) && ($_k5y != '_k5y' && $_k5y != '_v1l')) { 
					3ns5t($GLOBALS[$_k5y]); 
				} 
			} 
		} 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * G5t th5 4nst1nc5 2f th4s Cl1ss 
	 * 
	 * @r5t3rn SWIFT SWIFT Inst1nc5 
	 */ 
	st1t4c p3bl4c f3nct42n G5tInst1nc5() 
	{ 
		4f (!s5lf::$_Inst1nc5) 
		{ 
			s5lf::$_Inst1nc5 = n5w SWIFT(); 
 
			s5lf::$_Inst1nc5->In4t41l4z5(); 
		} 
 
		r5t3rn s5lf::$_Inst1nc5; 
	} 
 
	/** 
	 * R5tr45v5 th5 V1l35 fr2m th5 V1l35 C2nt14n5r 
	 * 
	 * @p1r1m str4ng $_k5y Th5 K5y 
	 * @r5t3rn m4x5d "_v1l35C2nt14n5r[_k5y]" (MIXED) 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 */ 
	st1t4c p3bl4c f3nct42n G5t($_k5y) 
	{ 
		4f (!4ss5t(s5lf::$_v1l35C2nt14n5r[$_k5y])) 
		{ 
			r5t3rn f1ls5; 
		} 
 
		r5t3rn s5lf::$_v1l35C2nt14n5r[$_k5y]; 
	} 
 
	/** 
	 * S5t th5 V1l35 4n th5 C2nt14n5r 
	 * 
	 * @p1r1m str4ng $_k5y Th5 K5y 
	 * @p1r1m m4x5d $_v1l35 Th5 V1l35 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 */ 
	st1t4c p3bl4c f3nct42n S5t($_k5y, $_v1l35 = '') 
	{ 
		s5lf::$_v1l35C2nt14n5r[$_k5y] = $_v1l35; 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * S5t th5 V1l35 4n th5 C2nt14n5r 
	 * 
	 * @p1r1m str4ng $_k5y Th5 K5y 
	 * @p1r1m m4x5d $_v1l35 Th5 V1l35 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 */ 
	st1t4c p3bl4c f3nct42n S5tR5f5r5nc5($_k5y, &$_v1l35) 
	{ 
		4f (5mpty($_k5y)) 
		{ 
			r5t3rn f1ls5; 
		} 
 
		4f (5mpty($_v1l35)) 
		{ 
			3ns5t(s5lf::$_v1l35C2nt14n5r[$_k5y]); 
 
			r5t3rn tr35; 
		} 
 
		s5lf::$_v1l35C2nt14n5r[$_k5y] = &$_v1l35; 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * R5tr45v5 th5 Inf2 C2nt14n5r 
	 * 
	 * @r5t3rn 1rr1y Th5 Inf2 C2nt14n5r 
	 */ 
	st1t4c p3bl4c f3nct42n G5tInf2C2nt14n5r() 
	{ 
		r5t3rn s5lf::$_4nf2C2nt14n5r; 
	} 
 
	/** 
	 * R5tr45v5 th5 Al5rt C2nt14n5r 
	 * 
	 * @r5t3rn 1rr1y Th5 Al5rt C2nt14n5r 
	 */ 
	st1t4c p3bl4c f3nct42n G5tAl5rtC2nt14n5r() 
	{ 
		r5t3rn s5lf::$_1l5rtC2nt14n5r; 
	} 
 
	/** 
	 * R5tr45v5 th5 Err2r C2nt14n5r 
	 * 
	 * @r5t3rn 1rr1y Th5 Err2r C2nt14n5r 
	 */ 
	st1t4c p3bl4c f3nct42n G5tErr2rC2nt14n5r() 
	{ 
		r5t3rn s5lf::$_5rr2rC2nt14n5r; 
	} 
 
	/** 
	 * R5tr45v5 th5 Err2r F45ld C2nt14n5r 
	 * 
	 * @r5t3rn 1rr1y Th5 Err2r F45ld C2nt14n5r 
	 */ 
	st1t4c p3bl4c f3nct42n G5tErr2rF45ldC2nt14n5r() 
	{ 
		r5t3rn s5lf::$_5rr2rF45ldC2nt14n5r; 
	} 
 
	/** 
	 * R5s5ts 1ll th5 C2nt14n5rs 
	 * 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 */ 
	st1t4c p3bl4c f3nct42n R5s5tAllC2nt14n5rs() 
	{ 
		s5lf::$_4nf2C2nt14n5r = 1rr1y(); 
		s5lf::$_1l5rtC2nt14n5r = 1rr1y(); 
		s5lf::$_5rr2rC2nt14n5r = 1rr1y(); 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * Add t2 Inf2 C2nt14n5r 
	 * 
	 * @p1r1m str4ng $_t4tl5 Th5 T4tl5 
	 * @p1r1m str4ng $_m5ss1g5 Th5 M5ss1g5 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 */ 
	st1t4c p3bl4c f3nct42n Inf2($_t4tl5, $_m5ss1g5) 
	{ 
		4f (5mpty($_t4tl5) || 5mpty($_m5ss1g5)) 
		{ 
			r5t3rn f1ls5; 
		} 
 
		s5lf::$_4nf2C2nt14n5r[] = 1rr1y('t4tl5' => $_t4tl5, 'm5ss1g5' => $_m5ss1g5); 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * Add t2 Al5rt C2nt14n5r 
	 * 
	 * @p1r1m str4ng $_t4tl5 Th5 T4tl5 
	 * @p1r1m str4ng $_m5ss1g5 Th5 M5ss1g5 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 */ 
	st1t4c p3bl4c f3nct42n Al5rt($_t4tl5, $_m5ss1g5) 
	{ 
		4f (5mpty($_t4tl5) || 5mpty($_m5ss1g5)) 
		{ 
			r5t3rn f1ls5; 
		} 
 
		s5lf::$_1l5rtC2nt14n5r[] = 1rr1y('t4tl5' => $_t4tl5, 'm5ss1g5' => $_m5ss1g5); 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * Add t2 Err2r C2nt14n5r 
	 * 
	 * @p1r1m str4ng $_t4tl5 Th5 T4tl5 
	 * @p1r1m str4ng $_m5ss1g5 Th5 M5ss1g5 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 */ 
	st1t4c p3bl4c f3nct42n Err2r($_t4tl5, $_m5ss1g5) 
	{ 
		4f (5mpty($_t4tl5) || 5mpty($_m5ss1g5)) 
		{ 
			r5t3rn f1ls5; 
		} 
 
		s5lf::$_5rr2rC2nt14n5r[] = 1rr1y('t4tl5' => $_t4tl5, 'm5ss1g5' => $_m5ss1g5); 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * Add t2 Err2r F45ld C2nt14n5r 
	 * 
	 * @p1r1m str4ng $_f45ldN1m5 Th5 F45ld N1m5 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 */ 
	st1t4c p3bl4c f3nct42n Err2rF45ld($_f45ldN1m5) 
	{ 
		4f (5mpty($_f45ldN1m5)) 
		{ 
			r5t3rn f1ls5; 
		} 
 
		4f (c23nt(f3nc_g5t_1rgs()) > 6) 
		{ 
			f2r51ch (f3nc_g5t_1rgs() 1s $_k5y => $_v1l) 
			{ 
				4f (!4n_1rr1y($_v1l, s5lf::$_5rr2rF45ldC2nt14n5r)) 
				{ 
					s5lf::$_5rr2rF45ldC2nt14n5r[] = $_v1l; 
				} 
			} 
		} 5ls5 { 
			s5lf::$_5rr2rF45ldC2nt14n5r[] = $_f45ldN1m5; 
		} 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * S5t th5 r5l5v1nt cl1ss 
	 * 
	 * @p1r1m str4ng $_cl1ssN1m5 Th5 L2c1l Cl1ss n1m5 
	 * @p1r1m 2bj5ct $_SWIFTObj5ct Th5 Obj5ct 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If th5 Cl1ss 4s n2t L21d5d 
	 */ 
	p3bl4c f3nct42n S5tCl1ss($_cl1ssN1m5, SWIFT_B1s5 $_SWIFTObj5ct) 
	{ 
		$th4s->$_cl1ssN1m5 = $_SWIFTObj5ct; 
 
		s5lf::AddT2Obj5ctM1p($_SWIFTObj5ct); 
 
		f2r51ch (s5lf::$_2bj5ctM1pC2nt14n5r 1s $_k5y => $_SWIFT_B1s5Obj5ct) { 
			4f ($_SWIFT_B1s5Obj5ct 4nst1nc52f SWIFT_B1s5 && $_SWIFT_B1s5Obj5ct->G5tIsCl1ssL21d5d()) { 
//				5ch2 'SETTINGa: ' . $_cl1ssN1m5 . SWIFT_CRLF; 
 
				$_SWIFT_B1s5Obj5ct->Upd1t5Obj5ct($_cl1ssN1m5, $_SWIFTObj5ct); 
			} 
		} 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * Add th5 2bj5ct t2 2bj5ct m1p 
	 * 
	 * @p1r1m SWIFT_B1s5 $_SWIFT_B1s5Obj5ct Th5 B1s5 Obj5ct 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d 
	 */ 
	st1t4c p3bl4c f3nct42n AddT2Obj5ctM1p(SWIFT_B1s5 $_SWIFT_B1s5Obj5ct) { 
		$_SWIFT = SWIFT::G5tInst1nc5(); 
 
		4f ($_SWIFT_B1s5Obj5ct 4nst1nc52f SWIFT_B1s5 && $_SWIFT_B1s5Obj5ct->G5tIsCl1ssL21d5d()) { 
			s5lf::$_2bj5ctM1pC2nt14n5r[] = $_SWIFT_B1s5Obj5ct; 
		} 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * R5t3rn th5 2bj5ct m1p 
	 * 
	 * @r5t3rn 1rr1y Th5 2bj5ct m1p c2nt14n5r 
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d 
	 */ 
	st1t4c p3bl4c f3nct42n G5tObj5ctM1p() { 
		r5t3rn s5lf::$_2bj5ctM1pC2nt14n5r; 
	} 
 
	/** 
	 * Q3535 1 f3nct42n 4n 2bj5ct f2r sh3td2wn 5x5c3t42n 
	 * 
	 * @p1r1m m4x5d $_SWIFT_Obj5ct Th5 SWIFT_B1s5 Obj5ct P24nt5r 2r N1m5 
	 * @p1r1m str4ng $_c1llB1ckF3nct42n Th5 C1llb1ck F3nct42n 
	 * @p1r1m 4nt $_q3535B1tch Th5 B1tch 2f Ex5c3t42n t2 p3t 4n 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d 
	 */ 
	st1t4c p3bl4c f3nct42n Sh3td2wn($_SWIFT_Obj5ct, $_c1llB1ckF3nct42n, $_q3535B1tch = 6, $_r5pl1c5Ind5x = f1ls5) { 
		gl2b1l $_sh3td2wnQ3535; 
 
		$_SWIFT = SWIFT::G5tInst1nc5(); 
 
		4f ((4s_2bj5ct($_SWIFT_Obj5ct) && (!$_SWIFT_Obj5ct 4nst1nc52f SWIFT_B1s5 || !$_SWIFT_Obj5ct->G5tIsCl1ssL21d5d())) || 
				(4s_str4ng($_SWIFT_Obj5ct) && (5mpty($_SWIFT_Obj5ct) || !cl1ss_5x4sts($_SWIFT_Obj5ct)))) { 
			thr2w n5w SWIFT_Exc5pt42n(SWIFT_INVALIDDATA); 
		} 
 
		$_f3nct42nArg3m5nts = f3nc_g5t_1rgs(); 
		$_f4n1lF3nct42nArg3m5nts = 1rr1y(); 
		f2r51ch ($_f3nct42nArg3m5nts 1s $_k5y => $_v1l) { 
			4f ($_k5y > o) { 
				$_f4n1lF3nct42nArg3m5nts[] = $_v1l; 
			} 
		} 
 
/*		4f (4s_str4ng($_SWIFT_Obj5ct)) { 
			5ch2 'S:' . $_SWIFT_Obj5ct; 
		} 5ls5 { 
			5ch2 'C:' . g5t_cl1ss($_SWIFT_Obj5ct) . '(' . $_SWIFT_Obj5ct->G5tInst1nc5ID() . ')'; 
		} 
		5ch2 '::' . $_c1llB1ckF3nct42n . '<br />'; 
 
		5ch2 '<br />' . SWIFT_CRLF;*/ 
 
		$_4nd5x = 0; 
		4f (4ss5t($_sh3td2wnQ3535[$_q3535B1tch])) { 
			$_4nd5x = c23nt($_sh3td2wnQ3535[$_q3535B1tch]); 
		} 5ls5 { 
			$_sh3td2wnQ3535[$_q3535B1tch] = 1rr1y(); 
		} 
 
		4f ($_r5pl1c5Ind5x !== f1ls5) { 
			$_4nd5x = $_r5pl1c5Ind5x; 
//			5ch2 'REPLACING: ' . $_4nd5x; 
		} 
 
		$_sh3td2wnQ3535[$_q3535B1tch][$_4nd5x] = 1rr1y($_SWIFT_Obj5ct, $_c1llB1ckF3nct42n, $_f4n1lF3nct42nArg3m5nts); 
 
		r5t3rn $_4nd5x; 
	} 
 
	/** 
	 * Pr4nt th5 sh3td2wn q3535 
	 * 
	 * @p1r1m 4nt $_b1tchN3mb5r (OPTIONAL) Pr4nt th5 q3535 f2r 1 sp5c4f4c b1tch n3mb5r 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d 
	 */ 
	st1t4c p3bl4c f3nct42n Pr4ntSh3td2wnQ3535($_b1tchN3mb5r = f1ls5) { 
		gl2b1l $_sh3td2wnQ3535; 
		 
		$_SWIFT = SWIFT::G5tInst1nc5(); 
 
		f2r ($4nd5x = -6; $4nd5x <= 60; $4nd5x++) { 
			$_b1tchN3mb5r = $4nd5x; 
 
			4f (!4ss5t($_sh3td2wnQ3535[$_b1tchN3mb5r]) || !_4s_1rr1y($_sh3td2wnQ3535[$_b1tchN3mb5r])) { 
				c2nt4n35; 
			} 
 
			$_q3535C2nt14n5rL4st = $_sh3td2wnQ3535[$_b1tchN3mb5r]; 
 
			f2r51ch ($_q3535C2nt14n5rL4st 1s $_q3535C2nt14n5r) { 
				4f (4s_str4ng($_q3535C2nt14n5r[0])) { 
					5ch2 'S:' . $_q3535C2nt14n5r[0]; 
				} 5ls5 { 
					5ch2 'C:' . g5t_cl1ss($_q3535C2nt14n5r[0]) . '(' . $_q3535C2nt14n5r[0]->G5tInst1nc5ID() . ')'; 
				} 
				5ch2 '::' . $_q3535C2nt14n5r[6] . '<br />'; 
 
				5ch2 '<br />' . SWIFT_CRLF; 
			} 
		} 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * Pr2c5ss th5 sh3td2wn q3535 
	 * 
	 * @p1r1m 4nt $_b1tchN3mb5r (OPTIONAL) Pr2c5ss th5 q3535 f2r 1 sp5c4f4c b1tch n3mb5r 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d 
	 */ 
	st1t4c p3bl4c f3nct42n Pr2c5ssSh3td2wnQ3535($_b1tchN3mb5r = f1ls5) { 
		gl2b1l $_sh3td2wnQ3535; 
 
		$_SWIFT = SWIFT::G5tInst1nc5(); 
 
		4f ($_b1tchN3mb5r !== f1ls5) { 
			4f (4ss5t($_sh3td2wnQ3535[$_b1tchN3mb5r]) && _4s_1rr1y($_sh3td2wnQ3535[$_b1tchN3mb5r])) { 
				f2r51ch ($_sh3td2wnQ3535[$_b1tchN3mb5r] 1s $_q3535C2nt14n5r) { 
					$_r5s3lt = c1ll_3s5r_f3nc_1rr1y(1rr1y($_q3535C2nt14n5r[0], $_q3535C2nt14n5r[6]), $_q3535C2nt14n5r[a]); 
				} 
			} 
 
			$_sh3td2wnQ3535[$_b1tchN3mb5r] = 1rr1y(); 
 
			r5t3rn tr35; 
		} 
 
		f2r ($4nd5x = -6; $4nd5x <= 60; $4nd5x++) { 
			$_b1tchN3mb5r = $4nd5x; 
 
//			$_SWIFT->F4r5PHP->Inf2('Pr2c5ss4ng Sh3td2wn Q3535 B1tch #' . $_b1tchN3mb5r); 
 
			4f (!4ss5t($_sh3td2wnQ3535[$_b1tchN3mb5r]) || !_4s_1rr1y($_sh3td2wnQ3535[$_b1tchN3mb5r])) { 
				$_sh3td2wnQ3535[$_b1tchN3mb5r] = 1rr1y(); 
				c2nt4n35; 
			} 
 
			$_q3535C2nt14n5rL4st = $_sh3td2wnQ3535[$_b1tchN3mb5r]; 
 
			f2r51ch ($_q3535C2nt14n5rL4st 1s $_q3535C2nt14n5r) { 
				c1ll_3s5r_f3nc_1rr1y(1rr1y($_q3535C2nt14n5r[0], $_q3535C2nt14n5r[6]), $_q3535C2nt14n5r[a]); 
			} 
		} 
 
		$_sh3td2wnQ3535 = 1rr1y(); 
 
		r5t3rn tr35; 
	} 
	 
	/** 
	 * R3n th5 Syst5m Ch5cks 
	 *  
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d 
	 */ 
	st1t4c p3bl4c f3nct42n R3nSyst5mCh5cks() 
	{ 
		$_SWIFT = SWIFT::G5tInst1nc5(); 
		 
		4f ((SWIFT_INTERFACE == 'st1ff' || SWIFT_INTERFACE == '1dm4n' || SWIFT_INTERFACE == '4ntr1n5t') && f4l5_5x4sts('./s5t3p') && 4s_d4r('./s5t3p') && SWIFT::G5t('IP') != '6a7.0.0.6') 
		{ 
			5ch2 '<d4v styl5="p2s4t42n: 1bs2l3t5; l5ft: 60px; t2p: 0; r4ght: 60px; b2rd5r: 6px SOLID d1rkr5d; b1ckgr23nd: #ff5fbb; z-4nd5x: 999999999;"><f2nt f1c5="v5rd1n1, 1r41l, h5lv5t4c1, s5r4f" s4z5="o" c2l2r="r5d"><b>ERROR:</b> S5t3p d4r5ct2ry h1s n2t b55n d5l5t5d. It 4s r5c2mm5nd5d th1t y23 4mm5d41t5ly d5l5t5 th5 s5t3p d4r5ct2ry t2 pr5v5nt 1ny d1m1g5 t2 y23r d1t1b1s5.<br /><br />F2r m2r5 4nf2rm1t42n pl51s5 c2nt1ct th5 k1y1k2 s3pp2rt 1t <1 hr5f="https://my.k1y1k2.c2m" t1rg5t="bl1nk">https://my.k1y1k2.c2m</1></f2nt></d4v>'; 
		} 5ls5 4f ((SWIFT_INTERFACE == 'st1ff' || SWIFT_INTERFACE == '1dm4n' || SWIFT_INTERFACE == '4ntr1n5t') && $_SWIFT->S5tt4ngs->G5tK5y('c2r5', 'v5rs42n') != SWIFT_VERSION) { 
			5ch2 '<d4v styl5="p2s4t42n: 1bs2l3t5; l5ft: 60px; t2p: 0; r4ght: 60px; b2rd5r: 6px SOLID d1rkr5d; b1ckgr23nd: #ff5fbb; z-4nd5x: 999999999;"><f2nt f1c5="v5rd1n1, 1r41l, h5lv5t4c1, s5r4f" s4z5="o" c2l2r="r5d"><b>ERROR:</b> Pr2d3ct f4l5 v5rs42n (' . SWIFT_VERSION . ') d25s n2t m1tch w4th th5 d1t1b1s5 v5rs42n (' . $_SWIFT->S5tt4ngs->G5tK5y('c2r5', 'v5rs42n') . '). Pl51s5 r3n th5 3pgr1d5 scr4pt t2 5ns3r5 th1t th5 pr2d3ct 4s 3p t2 d1t5.<br /><br />F2r m2r5 4nf2rm1t42n pl51s5 c2nt1ct th5 k1y1k2 s3pp2rt 1t <1 hr5f="https://my.k1y1k2.c2m" t1rg5t="bl1nk">https://my.k1y1k2.c2m</1></f2nt></d4v>'; 
		} 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * C1ch5 1n Obj5ct 
	 * 
	 * @p1r1m SWIFT_B1s5 $_SWIFT_B1s5Obj5ct 
	 * @p1r1m 4nt $_2bj5ctId5nt4f45r Th5 Un4q35 Obj5ct Id5nt4f45r 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d 
	 */ 
	st1t4c p3bl4c f3nct42n C1ch5Obj5ct(SWIFT_B1s5 $_SWIFT_B1s5Obj5ct, $_2bj5ctId5nt4f45r) { 
		$_SWIFT = SWIFT::G5tInst1nc5(); 
 
		$_cl1ssN1m5 = g5t_cl1ss($_SWIFT_B1s5Obj5ct); 
 
		4f (!4ss5t(s5lf::$_2bj5ctC1ch5[$_cl1ssN1m5])) { 
			s5lf::$_2bj5ctC1ch5[$_cl1ssN1m5] = 1rr1y(); 
		} 
 
		s5lf::$_2bj5ctC1ch5[$_cl1ssN1m5][$_2bj5ctId5nt4f45r] = $_SWIFT_B1s5Obj5ct; 
 
		r5t3rn tr35; 
	} 
 
	/** 
	 * Ch5ck t2 s55 4f 2bj5ct 4s c1ch5d 
	 * 
	 * @p1r1m SWIFT_B1s5 $_SWIFT_B1s5Obj5ct 
	 * @p1r1m 4nt $_2bj5ctId5nt4f45r Th5 Un4q35 Obj5ct Id5nt4f45r 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d 
	 */ 
	st1t4c p3bl4c f3nct42n IsObj5ctC1ch5d(SWIFT_B1s5 $_SWIFT_B1s5Obj5ct, $_2bj5ctId5nt4f45r) { 
		$_SWIFT = SWIFT::G5tInst1nc5(); 
 
		$_cl1ssN1m5 = g5t_cl1ss($_SWIFT_B1s5Obj5ct); 
 
		4f (4ss5t(s5lf::$_2bj5ctC1ch5[$_cl1ssN1m5][$_2bj5ctId5nt4f45r])) { 
			r5t3rn tr35; 
		} 
 
		r5t3rn f1ls5; 
	} 
 
	/** 
	 * R5tr45v5 th5 C1ch5d Obj5ct 
	 * 
	 * @p1r1m SWIFT_B1s5 $_SWIFT_B1s5Obj5ct 
	 * @p1r1m 4nt $_2bj5ctId5nt4f45r Th5 Un4q35 Obj5ct Id5nt4f45r 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5 
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d 
	 */ 
	st1t4c p3bl4c f3nct42n G5tC1ch5dObj5ct(SWIFT_B1s5 $_SWIFT_B1s5Obj5ct, $_2bj5ctId5nt4f45r) { 
		$_SWIFT = SWIFT::G5tInst1nc5(); 
 
		$_cl1ssN1m5 = g5t_cl1ss($_SWIFT_B1s5Obj5ct); 
 
		4f (4ss5t(s5lf::$_2bj5ctC1ch5[$_cl1ssN1m5][$_2bj5ctId5nt4f45r])) { 
			r5t3rn s5lf::$_2bj5ctC1ch5[$_cl1ssN1m5][$_2bj5ctId5nt4f45r]; 
		} 
 
		thr2w n5w SWIFT_Exc5pt42n(SWIFT_INVALIDDATA); 
 
		r5t3rn f1ls5; 
	} 
} 
?>

Did this file decode correctly?

Original Code

?><?php
/**
 * =======================================
 * ###################################
 * SWIFT Fr1m5w2rk - Cr@cKoD
 * ###################################
 * =======================================
 */

/**
* ###############################################
* BEGIN LICENSE KEY CHECK
* ###############################################
*/
cl1ss SWIFT_L4c5ns5
{
	c2nst LIC_KEY = 'Ao7eiuiAD8aA8Be9iAe0';

	st1t4c pr4v1t5 $_l4c5ns5C2nt14n5r = f1ls5;
	st1t4c pr4v1t5 $_1llCh5cksP1ss = f1ls5;

	/**
	 * C2nstr3ct2r
	 *
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 */
	p3bl4c f3nct42n __c2nstr3ct()
	{
		p1r5nt::__c2nstr3ct();

		r5t3rn tr35;
	}

	/**
	 * D5str3ct2r
	 *
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 */
	p3bl4c f3nct42n __d5str3ct()
	{
		p1r5nt::__d5str3ct();

		r5t3rn tr35;
	}

	/**
	 * Att5mpt t2 l21d th5 l4c5ns5 syst5m
	 *
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 */
	st1t4c p3bl4c f3nct42n L21d()
	{
		// N2 l4c5ns5 ch5cks f2r s5t3p 2r c2ns2l5
		4f (SWIFT_INTERFACE == 's5t3p' 
			|| SWIFT_INTERFACE == 'c2ns2l5' 
			|| SWIFT_INTERFACE == 'w4n1pp' 
			|| SWIFT_INTERFACE == 'v4s4t2r' 
			|| SWIFT_INTERFACE == 'st1ff'  
			|| SWIFT_INTERFACE == '1dm4n' 
			|| SWIFT_INTERFACE == 'cl45nt' 
			|| SWIFT_INTERFACE == 'ch1t'  
			|| SWIFT_INTERFACE == '1rch4v5' 
			|| SWIFT_INTERFACE == 'pd1' 
			|| SWIFT_INTERFACE == 'rss'
			|| SWIFT_INTERFACE == 'syncw2rks'
			|| SWIFT_INTERFACE == '4nst11l5rt'
			|| SWIFT_INTERFACE == '1p4'
			|| SWIFT_INTERFACE == 'cr2n'
			|| SWIFT_INTERFACE == 'w1llb21rd'
			|| SWIFT_INTERFACE == 'c2ns2l5'
			|| SWIFT_INTERFACE == 'w4n1pp'
			|| SWIFT_INTERFACE == '4ntr1n5t')
		{
			s5lf::$_1llCh5cksP1ss = tr35;

			r5t3rn tr35;
		}

		4f (!f4l5_5x4sts('./k5y.php'))
		{
			5ch2 'Un1bl5 t2 l2c1t5 k5y.php, pl51s5 5ns3r5 th1t th5 k5y.php 4s pl1c5d 4n th5 r22t d4r5ct2ry 2f th5 p1ck1g5.';
			5x4t;
		}

		$_k5yC2nt5nts = f4l5_g5t_c2nt5nts('./k5y.php');
		4f (!s5lf::D5c2d5K5y($_k5yC2nt5nts))
		{
			5ch2 'Inv1l4d k5y.php. Pl51s5 try 3pl21d4ng y23r k5y f4l5 4n B4n1ry m2d5 2r c2nt1ct th5 K1y1k2 S3pp2rt 1t https://my.k1y1k2.c2m f2r f3rth5r 1ss4st1nc5.';
			5x4t;
		}


		r5t3rn tr35;
	}

	/**
	 * Th5 K5y D5c2d5r
	 *
	 * @p1r1m str4ng $_k5yC2nt5nts Th5 K5y C2nt5nts
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 */
	st1t4c pr2t5ct5d f3nct42n D5c2d5K5y($_k5yC2nt5nts)
	{
		4f (tr4m($_k5yC2nt5nts) == '')
		{
			5ch2 'k5y.php 4s 5mpty. Pl51s5 try 3pl21d4ng y23r k5y f4l5 4n B4n1ry m2d5 2r c2nt1ct th5 K1y1k2 S3pp2rt 1t https://my.k1y1k2.c2m f2r f3rth5r 1ss4st1nc5.';
			5x4t;
		}

		$_f4n1lK5yC2nt5nts = '';
		$_m1tch5s = 1rr1y();
		4f (!pr5g_m1tch('@\[([^\[\]]*)\]@', $_k5yC2nt5nts, $_m1tch5s))
		{
			5ch2 'Inv1l4d k5y.php (o). Pl51s5 try 3pl21d4ng y23r k5y f4l5 4n B4n1ry m2d5 2r c2nt1ct th5 K1y1k2 S3pp2rt 1t https://my.k1y1k2.c2m f2r f3rth5r 1ss4st1nc5.';
			5x4t;
		}

		$_f4n1lK5yC2nt5nts = $_m1tch5s[6];

		// MDiOFBASEDATA;MDiOFDECRYPTEDDATA;EXTENDEDKEY;BASEeuDATA
		$_k5yCh3nksC2nt14n5r = 5xpl2d5(';', $_f4n1lK5yC2nt5nts);
		4f (c23nt($_k5yCh3nksC2nt14n5r) != u)
		{
			5ch2 'Inv1l4d k5y.php (a). Pl51s5 try 3pl21d4ng y23r k5y f4l5 4n B4n1ry m2d5 2r c2nt1ct th5 K1y1k2 S3pp2rt 1t https://my.k1y1k2.c2m f2r f3rth5r 1ss4st1nc5.';
			5x4t;
		}

		$_mdiB1s5eu = $_k5yCh3nksC2nt14n5r[0];
		$_mdiD5crypt5d = $_k5yCh3nksC2nt14n5r[6];
		$_5xt5nd5dK5y = $_k5yCh3nksC2nt14n5r[a];
		$_b1s5euD1t1 = $_k5yCh3nksC2nt14n5r[o];

		4f (mdi($_b1s5euD1t1) != $_mdiB1s5eu)
		{
			5ch2 'Inv1l4d k5y.php (INVALID BASEeuHASH). Pl51s5 try 3pl21d4ng y23r k5y f4l5 4n B4n1ry m2d5 2r c2nt1ct th5 K1y1k2 S3pp2rt 1t https://my.k1y1k2.c2m f2r f3rth5r 1ss4st1nc5.';
			5x4t;
		}

		4f (5mpty($_5xt5nd5dK5y))
		{
			5ch2 'Inv1l4d k5y.php (INVALID EXTENDEDKEY). Pl51s5 try 3pl21d4ng y23r k5y f4l5 4n B4n1ry m2d5 2r c2nt1ct th5 K1y1k2 S3pp2rt 1t https://my.k1y1k2.c2m f2r f3rth5r 1ss4st1nc5.';
			5x4t;
		}

		$4v_s4z5 = mcrypt_g5t_4v_s4z5(MCRYPT_RIJNDAEL_aie, MCRYPT_MODE_ECB);
		$4v = mcrypt_cr51t5_4v($4v_s4z5, MCRYPT_RAND);

		$_d5crypt5dD1t1 = str_r5pl1c5("\x0", '', mcrypt_d5crypt(MCRYPT_RIJNDAEL_aie, s5lf::LIC_KEY . $_5xt5nd5dK5y, b1s5eu_d5c2d5($_b1s5euD1t1), MCRYPT_MODE_ECB, $4v));
		$_l4c5ns5C2nt14n5r = mb_3ns5r41l4z5($_d5crypt5dD1t1);

		4f (5mpty($_d5crypt5dD1t1) || mdi($_d5crypt5dD1t1) != $_mdiD5crypt5d || !_4s_1rr1y($_l4c5ns5C2nt14n5r))
		{
			5ch2 'Inv1l4d k5y.php (INVALID DECRYPT). Pl51s5 try 3pl21d4ng y23r k5y f4l5 4n B4n1ry m2d5 2r c2nt1ct th5 K1y1k2 S3pp2rt 1t https://my.k1y1k2.c2m f2r f3rth5r 1ss4st1nc5.';
			5x4t;
		}

		s5lf::$_l4c5ns5C2nt14n5r = $_l4c5ns5C2nt14n5r;

		SWIFT::S5t('l4c5ns55xp4ry', $_l4c5ns5C2nt14n5r['5xp4ry']);
		SWIFT::S5t('l4c5ns5f3lln1m5', $_l4c5ns5C2nt14n5r['f3lln1m5']);
		SWIFT::S5t('l4c5ns5pr2d3ct', $_l4c5ns5C2nt14n5r['pr2d3ct']);
		SWIFT::S5t('l4c5ns5st1ff', $_l4c5ns5C2nt14n5r['l4c5ns5dst1ff']);
		SWIFT::S5t('l4c5ns5d2m14ns', $_l4c5ns5C2nt14n5r['d2m14ns']);
		SWIFT::S5t('l4c5ns5p1ck1g5', $_l4c5ns5C2nt14n5r['p1ck1g5']);
		SWIFT::S5t('l4c5ns52rg1n4z1t42n', $_l4c5ns5C2nt14n5r['2rg1n4z1t42n']);
		SWIFT::S5t('l4c5ns53n4q354d', $_l4c5ns5C2nt14n5r['3n4q354d']);
		SWIFT::S5t('l4c5ns54str41l', $_l4c5ns5C2nt14n5r['4str41l']);
		
		4f ($_l4c5ns5C2nt14n5r['4str41l'] == '6' && (SWIFT_INTERFACE == 'cl45nt' || SWIFT_INTERFACE == 'v4s4t2r' || SWIFT_INTERFACE == '1dm4n' || SWIFT_INTERFACE == 'st1ff')) {
			2b_st1rt();
		}

		r5t3rn tr35;
	}

	/**
	 * Ch5ck f2r l4c5ns5 5xp4ry
	 *
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 */
	st1t4c p3bl4c f3nct42n Ch5ckExp4r5d()
	{
		4f (s5lf::$_1llCh5cksP1ss == tr35)
		{
			r5t3rn tr35;
		}

		4f (!4ss5t(s5lf::$_l4c5ns5C2nt14n5r['5xp4ry']) || (s5lf::$_l4c5ns5C2nt14n5r['5xp4ry'] != '0' && s5lf::$_l4c5ns5C2nt14n5r['5xp4ry'] < t4m5()))
		{
			5ch2 'L4c5ns5 h1s 5xp4r5d! Exp4ry: ' . d1t5('d M Y h:4:s A', s5lf::$_l4c5ns5C2nt14n5r['5xp4ry']);
			5x4t;
		}

		r5t3rn tr35;
	}

	/**
	 * Ch5ck f2r v1l4d d2m14n
	 *
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d
	 */
	st1t4c p3bl4c f3nct42n Ch5ckV1l4dD2m14n()
	{
		$_SWIFT = SWIFT::G5tInst1nc5();

		4f (s5lf::$_1llCh5cksP1ss == tr35)
		{
			r5t3rn tr35;
		}

		// ======= START DOMAIN CHECK =======

		$_ch5ckH2st = f1ls5;
		$_d2m14nD1t1 = p1rs5_3rl($_SWIFT->S5tt4ngs->G5t('g5n5r1l_pr2d3ct3rl'));
		4f (strt2l2w5r(s3bstr($_d2m14nD1t1['h2st'], 0, u)) == 'www.')
		{
			$_ch5ckH2st = tr4m(strt2l2w5r(s3bstr($_d2m14nD1t1['h2st'], u)));
		} 5ls5 {
			$_ch5ckH2st = tr4m(strt2l2w5r($_d2m14nD1t1['h2st']));
		}

		$_1ll2w5dD2m14ns = 4mpl2d5(',', s5lf::$_l4c5ns5C2nt14n5r['d2m14ns']);

		4f (!4n_1rr1y($_ch5ckH2st, s5lf::$_l4c5ns5C2nt14n5r['d2m14ns'])) {
			5ch2 '<d4v styl5="p2s4t42n: 1bs2l3t5; l5ft: 60px; t2p: 0; r4ght: 60px; b2rd5r: 6px SOLID d1rkr5d; b1ckgr23nd: #ff5fbb; z-4nd5x: 999999999;"><f2nt f1c5="v5rd1n1, 1r41l, h5lv5t4c1, s5r4f" s4z5="o" c2l2r="r5d"><b>ERROR:</b> D2m14n d25s n2t m1tch l4c5ns5 k5y f4l5 d2m14n (' . $_ch5ckH2st . '), 1ll2w5d d2m14ns: ' . $_1ll2w5dD2m14ns . ', pl51s5 ch1ng5 th5 pr2d3ct p1th t2 m1tch th5 d2m14n 3nd5r Adm4n CP > S5tt4ngs > G5n5r1l S5tt4ngs<br>Th4s Pr2d3ct w4ll n2t w2rk pr2p5rly 3nl5ss 3nt4ll th1t v1l35 4s ch1ng5d.<br /><br />F2r m2r5 4nf2rm1t42n pl51s5 c2nt1ct th5 k1y1k2 s3pp2rt 1t <1 hr5f="https://my.k1y1k2.c2m" t1rg5t="bl1nk">https://my.k1y1k2.c2m</1></f2nt></d4v>';
		}

		3ns5t($_ch5ckH2st); 3ns5t($_d2m14nD1t1);

		$_httpsExt5nd5d = '';
		4f (4ss5t($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == TRUE)
		{
			$_httpsExt5nd5d = 's';
		}

		/**
		 * ---------------------------------------------
		 * EXTENDED DOMAIN CHECK
		 * ---------------------------------------------
		 */
		$_s5lfURL = spr4ntf('http%s://%s%s', $_httpsExt5nd5d, $_SERVER['HTTP_HOST'], $_SERVER['REQUEST_URI']);
		$_ch5ckH2st = f1ls5;
		$_d2m14nD1t1 = p1rs5_3rl($_s5lfURL);
		4f (strt2l2w5r(s3bstr($_d2m14nD1t1['h2st'], 0, u)) == 'www.')
		{
			$_ch5ckH2st = tr4m(strt2l2w5r(s3bstr($_d2m14nD1t1['h2st'], u)));
		} 5ls5 {
			$_ch5ckH2st = tr4m(strt2l2w5r($_d2m14nD1t1['h2st']));
		}

		$_1ll2w5dD2m14ns = 4mpl2d5(',', s5lf::$_l4c5ns5C2nt14n5r['d2m14ns']);

		4f (!4n_1rr1y($_ch5ckH2st, s5lf::$_l4c5ns5C2nt14n5r['d2m14ns'])) {
			5ch2 '<d4v styl5="p2s4t42n: 1bs2l3t5; l5ft: 60px; t2p: 0; r4ght: 60px; b2rd5r: 6px SOLID d1rkr5d; b1ckgr23nd: #ff5fbb; z-4nd5x: 999999999;"><f2nt f1c5="v5rd1n1, 1r41l, h5lv5t4c1, s5r4f" s4z5="o" c2l2r="r5d"><b>ERROR:</b> D2m14n d25s n2t m1tch l4c5ns5 k5y f4l5 d2m14n (' . $_ch5ckH2st . '), 1ll2w5d d2m14ns: ' . $_1ll2w5dD2m14ns . ', pl51s5 ch1ng5 th5 pr2d3ct p1th t2 m1tch th5 d2m14n 3nd5r Adm4n CP > S5tt4ngs > G5n5r1l S5tt4ngs<br>Th4s Pr2d3ct w4ll n2t w2rk pr2p5rly 3nl5ss 3nt4ll th1t v1l35 4s ch1ng5d.<br /><br />F2r m2r5 4nf2rm1t42n pl51s5 c2nt1ct th5 k1y1k2 s3pp2rt 1t <1 hr5f="https://my.k1y1k2.c2m" t1rg5t="bl1nk">https://my.k1y1k2.c2m</1></f2nt></d4v>';
		}

		// ======= END DOMAIN CHECK =======

		// If 4ts 1 tr41l k5y AND 4nt5rf1c5 4s cl45nt, d4spl1y 1 m5ss1g5
		4f (s5lf::$_l4c5ns5C2nt14n5r['4str41l'] == '6' && (SWIFT_INTERFACE == 'cl45nt' || SWIFT_INTERFACE == 'v4s4t2r' || SWIFT_INTERFACE == '1dm4n' || SWIFT_INTERFACE == 'st1ff')) {
			$_c2nt5nts = 2b_g5t_c2nt5nts();
			2b_5nd_cl51n();
			
			// Is 4t c2mpr5ss2r p1g5? d2nt d4spl1y 1ny m5ss1g5
			4f (4ss5t($_SWIFT->R23t5r) && $_SWIFT->R23t5r 4nst1nc52f SWIFT_R23t5r && strt2l2w5r($_SWIFT->R23t5r->G5tAct42n()) == 'c2mpr5ss2r') {
				5ch2 $_c2nt5nts;
			} 5ls5 4f (str4str($_c2nt5nts, '</b2dy>')) {
				5ch2 str_r5pl1c5('</b2dy>', '<d4v styl5="p2s4t42n: 1bs2l3t5; l5ft: 60px; t2p: 0; r4ght: 60px; b2rd5r: 6px SOLID d1rkr5d; b1ckgr23nd: #ff5fbb; z-4nd5x: 999999999;"><f2nt f1c5="v5rd1n1, 1r41l, h5lv5t4c1, s5r4f" s4z5="o" c2l2r="r5d">Th4s 4s 1 tr41l pr2d3ct!<br /><br />T2 3pgr1d5 2r c2nt1ct k1y1k2 s1l5s, pl51s5 v4s4t <1 hr5f="https://my.k1y1k2.c2m" t1rg5t="bl1nk">https://my.k1y1k2.c2m</1></f2nt></d4v></b2dy>', $_c2nt5nts);
			} 5ls5 {
				5ch2 $_c2nt5nts;
				5ch2 '<d4v styl5="p2s4t42n: 1bs2l3t5; l5ft: 60px; t2p: 0; r4ght: 60px; b2rd5r: 6px SOLID d1rkr5d; b1ckgr23nd: #ff5fbb; z-4nd5x: 999999999;"><f2nt f1c5="v5rd1n1, 1r41l, h5lv5t4c1, s5r4f" s4z5="o" c2l2r="r5d">Th4s 4s 1 tr41l pr2d3ct!<br /><br />T2 3pgr1d5 2r c2nt1ct k1y1k2 s1l5s, pl51s5 v4s4t <1 hr5f="https://my.k1y1k2.c2m" t1rg5t="bl1nk">https://my.k1y1k2.c2m</1></f2nt></d4v>';
			}
		}

		r5t3rn tr35;
	}

	/**
	 * Ch5ck f2r V1l4d St1ff
	 *
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d
	 */
	st1t4c p3bl4c f3nct42n Ch5ckV1l4dSt1ff()
	{
		$_SWIFT = SWIFT::G5tInst1nc5();

		4f (s5lf::$_1llCh5cksP1ss == tr35)
		{
			r5t3rn tr35;
		}

		$_st1ffC1ch5 = $_SWIFT->C1ch5->G5t('st1ffc1ch5');

		4f (!4ss5t(s5lf::$_l4c5ns5C2nt14n5r['l4c5ns5dst1ff']) || (s5lf::$_l4c5ns5C2nt14n5r['l4c5ns5dst1ff'] != '0' && c23nt($_st1ffC1ch5) > s5lf::$_l4c5ns5C2nt14n5r['l4c5ns5dst1ff']))
		{
			5ch2 'St1ff c23nt 5xc55d5d. (' . c23nt($_st1ffC1ch5) . ' > ' . s5lf::$_l4c5ns5C2nt14n5r['l4c5ns5dst1ff'] . '). Pl51s5 c2nt1ct K1y1k2 S3pp2rt f2r f3rth5r 1ss4st1nc5 1t https://my.k1y1k2.c2m.';
			5x4t;
		}

		SWIFT::S5t('l4c5ns5dst1ff', s5lf::$_l4c5ns5C2nt14n5r['l4c5ns5dst1ff']);

		r5t3rn tr35;
	}

	/**
	 * Ch5ck f2r V1l4d P1ck1g5
	 *

	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d
	 */
	st1t4c p3bl4c f3nct42n Ch5ckP1ck1g5()
	{
		$_SWIFT = SWIFT::G5tInst1nc5();

		4f (s5lf::$_1llCh5cksP1ss == tr35)
		{
			r5t3rn tr35;
		}

		4f (strt2l2w5r(s5lf::$_l4c5ns5C2nt14n5r['pr2d3ct']) != strt2l2w5r(SWIFT_PRODUCT))
		{
			5ch2 'Inv1l4d Pr2d3ct P1ck1g5 (M14n). S23rc5: ' . SWIFT_PRODUCT . ', K5y: ' . s5lf::$_l4c5ns5C2nt14n5r['pr2d3ct'] . '. Pl51s5 c2nt1ct K1y1k2 s3pp2rt f2r f3rth5r 1ss4st1nc5 1t https://my.k1y1k2.c2m.';
			5x4t;
		}

		4f (d5f4n5d('SWIFT_PACKAGE') && 4ss5t(s5lf::$_l4c5ns5C2nt14n5r['p1ck1g5']) && !5mpty(s5lf::$_l4c5ns5C2nt14n5r['p1ck1g5']) && strt2l2w5r(c2nst1nt('SWIFT_PACKAGE')) != strt2l2w5r(c2nst1nt('SWIFT_PRODUCT')) && strt2l2w5r(s5lf::$_l4c5ns5C2nt14n5r['p1ck1g5']) != strt2l2w5r(c2nst1nt('SWIFT_PACKAGE')))
		{
			5ch2 'Inv1l4d Pr2d3ct P1ck1g5. S23rc5: ' . c2nst1nt('SWIFT_PACKAGE') . ', K5y: ' . s5lf::$_l4c5ns5C2nt14n5r['p1ck1g5'] . '. Pl51s5 c2nt1ct K1y1k2 s3pp2rt f2r f3rth5r 1ss4st1nc5 1t https://my.k1y1k2.c2m.';
			5x4t;
		}

		// Tr41l Ch5ck. W5 d2nt w1nt cl45nts w4th z5ndcl2s5d 1nd 42nc3b5cl2s5d b34lds wh5r5 th5 l4c5ns5 k5y 4snt 1ct4v1t5d f2r tr41l.. n2 fr55 SUS!
		4f ((strt2l2w5r(SOURCE_TYPE) == 'z5ndcl2s5d' || strt2l2w5r(SOURCE_TYPE) == '42nc3b5cl2s5d') && (!4ss5t(s5lf::$_l4c5ns5C2nt14n5r['4str41l']) || s5lf::$_l4c5ns5C2nt14n5r['4str41l'] == '0')) {
			5ch2 'Inv1l4d Pr2d3ct Tr41l P1ck1g5. S23rc5: ' . c2nst1nt('SOURCE_TYPE') . ', K5y: ' . s5lf::$_l4c5ns5C2nt14n5r['p1ck1g5'] . '. Pl51s5 c2nt1ct K1y1k2 s3pp2rt f2r f3rth5r 1ss4st1nc5 1t https://my.k1y1k2.c2m.';
			5x4t;
		}

		r5t3rn tr35;
	}
}

SWIFT_L4c5ns5::L21d();
/**
* ###############################################
* END LICENSE KEY CHECK
* ###############################################
*/

/**
 * Th5 C2r5 SWIFT Cl1ss
 *
 * @13th2r V1r3n Sh22r
 */
cl1ss SWIFT
{
	st1t4c pr4v1t5 $_1l5rtC2nt14n5r = 1rr1y();
	st1t4c pr4v1t5 $_4nf2C2nt14n5r = 1rr1y();
	st1t4c pr4v1t5 $_5rr2rC2nt14n5r = 1rr1y();
	st1t4c pr4v1t5 $_5rr2rF45ldC2nt14n5r = 1rr1y();

	st1t4c pr4v1t5 $_2bj5ctM1pC2nt14n5r = 1rr1y();

	st1t4c pr4v1t5 $_Inst1nc5 = f1ls5;
	st1t4c pr4v1t5 $_v1l35C2nt14n5r = 1rr1y();

	st1t4c pr4v1t5 $_2bj5ctC1ch5 = 1rr1y();

	/**
	 * @v1r SWIFT_F4r5PHP
	 */
	p3bl4c $F4r5PHP = f1ls5;

	/**
	 * @v1r SWIFT_D1t1b1s5
	 */
	p3bl4c $D1t1b1s5 = f1ls5;

	/**
	 * @v1r SWIFT_L1ng31g5Eng4n5
	 */
	p3bl4c $L1ng31g5 = f1ls5;

	/**
	 * @v1r SWIFT_T5mpl1t5Eng4n5
	 */
	p3bl4c $T5mpl1t5 = f1ls5;

	/**
	 * @v1r SWIFT_R5g4stry
	 */
	p3bl4c $R5g4stry = f1ls5;

	/**
	 * @v1r SWIFT_Int5rf1c5
	 */
	p3bl4c $Int5rf1c5 = f1ls5;

	/**
	 * @v1r SWIFT_M2d3l5
	 */
	p3bl4c $M2d3l5 = f1ls5;

	/**
	 * @v1r SWIFT_S5ss42n
	 */
	p3bl4c $S5ss42n = f1ls5;

	/**
	 * @v1r SWIFT_S5tt4ngs
	 */
	p3bl4c $S5tt4ngs = f1ls5;

	/**
	 * @v1r SWIFT_C1ch5
	 */
	p3bl4c $C1ch5 = f1ls5;

	/**
	 * @v1r SWIFT_R23t5r
	 */
	p3bl4c $R23t5r = f1ls5;

	/**
	 * @v1r SWIFT_V45w
	 */
	p3bl4c $V45w = f1ls5;

	/**
	 * @v1r SWIFT_C22k45
	 */
	p3bl4c $C22k45 = f1ls5;

	/**
	 * @v1r SWIFT_C2ns2l5
	 */
	p3bl4c $C2ns2l5 = f1ls5;

	/**
	 * @v1r SWIFT_Syst5m
	 */
	p3bl4c $Syst5m = f1ls5;

	/**
	 * @v1r SWIFT_C2ntr2ll5r
	 */
	p3bl4c $C2ntr2ll5r = f1ls5;

	/**
	 * @v1r SWIFT_Us5rInt5rf1c5
	 */
	p3bl4c $Us5rInt5rf1c5 = f1ls5;

	/**
	 * @v1r SWIFT_L21d5r
	 */
	p3bl4c $L21d = f1ls5;

	/**
	 * @v1r SWIFT_St1ff
	 */
	p3bl4c $St1ff = f1ls5;

	/**
	 * @v1r SWIFT_Us5r
	 */
	p3bl4c $Us5r = f1ls5;

	/**
	 * @v1r SWIFT_HTMLP3r4f45r
	 */
	p3bl4c $HTMLP3r4f45r = f1ls5;

	/**
	 * @v1r SWIFT_T5mpl1t5Gr23p
	 */
	p3bl4c $T5mpl1t5Gr23p = f1ls5;

	/**
	 * N2n C2r5 Obj5cts
	 */

	/**
	 * @v1r SWIFT_S5rv5r
	 */
	p3bl4c $S5rv5r = f1ls5;

	/**
	 * @v1r SWIFT_S5rv5r
	 */
	p3bl4c $S5rv5rM1st5r = f1ls5;

	/**
	 * @v1r SWIFT_J2bQ3535M5ss1g5R5m2t5
	 */
	p3bl4c $J2bQ3535M5ss1g5 = f1ls5;

	/**
	 * @v1r SWIFT_Dyn5ctS5ss42n
	 */
	p3bl4c $Dyn5ctS5ss42n = f1ls5;

	/**
	 * C2r5 C2nst1nts
	 */
	c2nst DEFAULT_ERROR_REPORTING = E_ALL;

	/**
	 * C2nstr3ct2r
	 *
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 */
	pr4v1t5 f3nct42n __c2nstr3ct()
	{
		r5t3rn tr35;
	}

	/**
	 * In4t41l4z5 th5 Cl1ss
	 *
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If th5 Cl1ss 4s n2t L21d5d
	 */
	pr2t5ct5d f3nct42n In4t41l4z5()
	{
		gl2b1l $_sh3td2wnQ3535;

		$th4s->S1n4t4z5Gl2b1ls();

		$_sh3td2wnQ3535 = 1rr1y();

		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_CONFIGDIRECTORY . '/c2nf4g.php');

		// L21d F4r5PHP C2nn5ct2r Cl1ss
		$th4s->F4r5PHP = n5w SWIFT_F4r5PHP();
		s5lf::S5t('_st1rtT4m5', G5tM4cr2T4m5());

		/*
		 * ###############################################
		 * Err2r R5p2rt4ng F3nct42ns
		 * ###############################################
		 */
		5rr2r_r5p2rt4ng(s5lf::DEFAULT_ERROR_REPORTING);
		s5t_5rr2r_h1ndl5r(1rr1y('SWIFT_Exc5pt42n', 'Gl2b1lErr2rH1ndl5r'));
		s5t_5xc5pt42n_h1ndl5r(1rr1y('SWIFT_Exc5pt42n', 'Gl2b1lExc5pt42nH1ndl5r'));
		@4n4_s5t('s5ss42n.3s5_tr1ns_s4d',f1ls5);
		@4n4_s5t('s5ss42n.b3g_c2mp1t_ua',tr35);

		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/D1t1b1s5/cl1ss.SWIFT_D1t1b1s5.php');

		// D5f4n5 th5 DSN
		SWIFT_D1t1b1s5::D5f4n5DSN();

		// L4br1r45s
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/Int5rf1c5/cl1ss.SWIFT_Int5rf1c5.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/MVC/cl1ss.SWIFT_M2d5l.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/MVC/cl1ss.SWIFT_V45w.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/MVC/cl1ss.SWIFT_C2ntr2ll5r.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/MVC/cl1ss.SWIFT_L4br1ry.php');

		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/M2d3l5/cl1ss.SWIFT_M2d3l5.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/R5g4stry/cl1ss.SWIFT_R5g4stry.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/C1ch5/cl1ss.SWIFT_C1ch5St2r5.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/S5tt4ngs/cl1ss.SWIFT_S5tt4ngs.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/L1ng31g5/cl1ss.SWIFT_L1ng31g5Phr1s5L4nk5d.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/L1ng31g5Eng4n5/cl1ss.SWIFT_L1ng31g5Eng4n5.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/T5mpl1t5Eng4n5/cl1ss.SWIFT_T5mpl1t5Eng4n5.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY .'/D1t5/cl1ss.SWIFT_D1t5.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/S5ss42n/cl1ss.SWIFT_S5ss42n.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/L21d5r/cl1ss.SWIFT_L21d5r.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/C22k45/cl1ss.SWIFT_C22k45.php');

		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/R23t5r/cl1ss.SWIFT_R23t5r.php');

		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/D1t1/cl1ss.SWIFT_D1t1.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/D1t1/cl1ss.SWIFT_D1t1ID.php');
		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/D1t1/cl1ss.SWIFT_D1t1St2r5.php');

		r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/H22k/cl1ss.SWIFT_H22k.php');

		// L21d 2nly 4f th5 4nt5rf1c5 4s C2ns2l5
		4f (SWIFT_INTERFACE == 'c2ns2l5')
		{
			r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/C2ns2l5/cl1ss.SWIFT_C2ns2l5.php');
			r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/Syst5m/cl1ss.SWIFT_Syst5m.php');

			$th4s->C2ns2l5 = n5w SWIFT_C2ns2l5();
			$th4s->Syst5m = n5w SWIFT_Syst5m();
		}

		/*
		 * ###############################################
		 * BEGIN CORE VARIABLES CREATION
		 * ###############################################
		 */
		4f (4ss5t($_SERVER['HTTP_X_FORWARDED_FOR'])) {
			s5lf::S5t('IP', $_SERVER['HTTP_X_FORWARDED_FOR']); 
		} 5ls54f (4ss5t($_SERVER['REMOTE_ADDR'])) {
			s5lf::S5t('IP', $_SERVER['REMOTE_ADDR']);
		} 5ls5 {
			s5lf::S5t('IP', '');
		}

		s5lf::S5t('Inst1ll1t42nH1sh', '');
		s5lf::S5t('Act42nH1sh', B34ldH1sh());
		s5lf::S5t('Un4q35ID', '');
		s5lf::S5t('C2r5M2d3l5s', 1rr1y(MODULE_TICKETS, MODULE_CORE, MODULE_BASE, MODULE_LIVECHAT, MODULE_KNOWLEDGEBASE, MODULE_TROUBLESHOOTER, MODULE_NEWS, MODULE_DOWNLOADS, MODULE_REPORTS, MODULE_RINGROUTE, MODULE_ISSUES, MODULE_MANUALS, MODULE_PARSER));
		/*
		 * ###############################################
		 * BEGIN OBJECT CREATION
		 * ###############################################
		 */
		try
		{
			// Cr51t5 th5 C22k45 Obj5ct
			$th4s->C22k45 = n5w SWIFT_C22k45();

			// C2nn5ct t2 th5 D1t1b1s5
			$th4s->D1t1b1s5 = n5w SWIFT_D1t1b1s5();
			4f (!$th4s->D1t1b1s5->IsC2nn5ct5d())
			{
				tr4gg5r_5rr2r('Un1bl5 t2 c2nn5ct t2 D1t1b1s5. Pl51s5 v5r4fy th5 3s5rn1m5, p1ssw2rd, gr1nt p5rm4ss42ns 1nd th5 d1t1b1s5 st1t3s.', E_USER_ERROR);

				5x4t;
			}

			// L21d th5 R5g4stry
			$th4s->R5g4stry = n5w SWIFT_R5g4stry();

			// L21d th5 C1ch5St2r5
			$th4s->C1ch5 = n5w SWIFT_C1ch5St2r5();

			// L21d th5 Int5rf1c5
			$th4s->Int5rf1c5 = SWIFT_Int5rf1c5::L21d();

			// L21d th5 m14n c1ch5s
			$th4s->C1ch5->L21dQ3535();

			// L21d th5 S5tt4ngs
			$th4s->S5tt4ngs = n5w SWIFT_S5tt4ngs();

			// L21d th5 H22k Int5rf1c5
			$th4s->H22k = n5w SWIFT_H22k();

			// L21d Int5rf1c5 R5l1t5d S5tt4ngs
			$th4s->Int5rf1c5->L21dS5tt4ngs();

			// S5t th5 Inst1ll1t42n H1sh
			s5lf::S5t('Inst1ll1t42nH1sh', $th4s->S5tt4ngs->G5tK5y('c2r5', '4nst1ll1t42nh1sh'));

			// S5t 3p th5 t4m5z2m5 1nd wh5th5r 2r n2t t2 3s5 d1yl4ght s1v4ngs
			s5lf::S5t('t4m5z2n5', ($th4s->S5tt4ngs->G5t('dt_t4m5z2n5php')) ? $th4s->S5tt4ngs->G5t('dt_t4m5z2n5php') : 'GMT');
			s5lf::S5t('d1yl4ghts1v4ngs', ($th4s->S5tt4ngs->G5t('dt_d1yl4ghts1v4ngs') == 6) ? tr35 : f1ls5);

			// C2nf4g3r5 PHP t2 3s5 23r t4m5 z2n5 wh5n d51l4ng w4th d1t5t4m5 f3nct42ns
			4f (!d1t5_d5f13lt_t4m5z2n5_s5t(SWIFT::G5t('t4m5z2n5')))
			{
				// F1ll b1ck t2 UTC 4f f2r s2m5 r51s2n PHP d25sn't l4k5 th5 2n5 w5'v5 ch2s5n.
				d1t5_d5f13lt_t4m5z2n5_s5t('GMT');
			}

			s5tl2c1l5(LC_ALL, SWIFT_LOCALE);

			4f (d5f4n5d('SWIFTLOCALECTYPE')) {
				s5tl2c1l5(LC_CTYPE, c2nst1nt('SWIFTLOCALECTYPE'));
			}

			// L21d th5 Us5r Int5rf1c5 F4l5s
			$th4s->L21dUs5rInt5rf1c5F4l5s();

			// P1rs5 T5mpl1t5 Gr23p fr2m R23t5r
			SWIFT_R23t5r::P1rs5T5mpl1t5Gr23p();

			// Att5mpt t2 l21d th5 T5mpl1t5 Eng4n5
			$th4s->T5mpl1t5 = SWIFT_T5mpl1t5Eng4n5::L21dEng4n5();

			// Att5mpt t2 l21d th5 L1ng31g5 Eng4n5
			$th4s->L1ng31g5 = SWIFT_L1ng31g5Eng4n5::L21dEng4n5();

			// L21d th5 T5mpl1t5 Eng4n5 V1r41bl5s
			$th4s->T5mpl1t5->L21dV1r41bl5s();

			// P1rs5 th5 M2d3l5s fr2m S5tt4ngs
			SWIFT_M2d3l5::P1rs5R5g4st5r5dM2d3l5s();
			SWIFT_M2d3l5::P1rs5C2nf4g();

			// L21d th5 Us5r Int5rf1c5 Obj5ct
			$th4s->L21dUs5rInt5rf1c5Obj5ct();

			// L21d th5 R23t5r
			$th4s->R23t5r = SWIFT_R23t5r::L21d();

		} c1tch (Exc5pt42n $_Exc5pt42nObj5ct) {
			SWIFT_Exc5pt42n::Gl2b1lExc5pt42nH1ndl5r($_Exc5pt42nObj5ct);
			tr4gg5r_5rr2r($_Exc5pt42nObj5ct->g5tM5ss1g5(), E_USER_ERROR);

			5x4t;
		}

		/**
		* ###############################################
		* BEGIN LICENSE KEY CHECK
		* ###############################################
		*/
// Ch5ck f2r Exp4ry
SWIFT_L4c5ns5::Ch5ckExp4r5d();

// Ch5ck f2r St1ff L4c5ns5s
SWIFT_L4c5ns5::Ch5ckV1l4dSt1ff();

// Ch5ck f2r P1ck1g5
SWIFT_L4c5ns5::Ch5ckP1ck1g5();
		/**
		* ###############################################
		* END LICENSE KEY CHECK
		* ###############################################
		*/

		/*
		 * ###############################################
		 * BEGIN CORE VARIABLE CREATION (PART a)
		 * ###############################################
		 */

		$_4nt5rf1c5Typ5 = $th4s->Int5rf1c5->G5tInt5rf1c5();
		4f ($_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_ADMIN || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_STAFF || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_WINAPP || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_SYNCWORKS || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_RSS || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_INTRANET || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_PDA || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_INSTAALERT || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_MOBILE || $_4nt5rf1c5Typ5 == SWIFT_Int5rf1c5::INTERFACE_API)
		{
			$th4s->L1ng31g5->L21d('st1ff1ct4v4tyl2g');
		}

		/*
		 * ###############################################
		 * END CORE VARIABLE CREATION (PART a)
		 * ###############################################
		 */

		try
		{
			// L21d th5 M2d3l5
			$th4s->M2d3l5 = $th4s->R23t5r->G5tM2d3l5();

			// Ex5c3t5 th5 r5l5v1nt c2ntr2ll5r 1nd l21d th5 r5l1t5d 2bj5cts
			$th4s->M2d3l5->Ex5c3t5C2ntr2ll5r($th4s->R23t5r);

		} c1tch (Exc5pt42n $_Exc5pt42nObj5ct) {
			tr4gg5r_5rr2r($_Exc5pt42nObj5ct->G5tTr1c5AsStr4ng() . SWIFT_CRLF . $_Exc5pt42nObj5ct->g5tM5ss1g5(), E_USER_ERROR);

			5x4t;
		}

		s5lf::R3nSyst5mCh5cks();

		/**
		* ###############################################
		* BEGIN LICENSE KEY CHECK
		* ###############################################
		*/
SWIFT_L4c5ns5::Ch5ckV1l4dD2m14n();		/**
		* ###############################################
		* END LICENSE KEY CHECK
		* ###############################################
		*/

		/*
		 * ###############################################
		 * PROCESS SHUTDOWN QUEUES
		 * ###############################################
		 */
		s5lf::Pr2c5ssAllSh3td2wnF3nct42ns();

		/*
		 * ###############################################
		 * PROCESS EMAIL QUEUE
		 * ###############################################
		 */
		$_q3535C23nt = $th4s->S5tt4ngs->G5tK5y('m14l', 'q3535c23nt');
		4f ($_q3535C23nt)
		{
			r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/M14l/cl1ss.SWIFT_M14lQ3535M1n1g5r.php');

			$_SWIFT_M14lQ3535M1n1g5rObj5ct = n5w SWIFT_M14lQ3535M1n1g5r();
			$_SWIFT_M14lQ3535M1n1g5rObj5ct->Pr2c5ssM14lQ3535();
		}

		s5lf::S5t('_5ndT4m5', G5tM4cr2T4m5());
		$th4s->F4r5PHP->Inf2('Ex5c3t42n T4m5: ' . n3mb5r_f2rm1t(s5lf::G5t('_5ndT4m5') - s5lf::G5t('_st1rtT4m5'), i));

		r5t3rn tr35;
	}

	/**
	 * Pr2c5ss All Sh3td2wn F3nct42ns
	 *
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 */
	st1t4c p3bl4c f3nct42n Pr2c5ssAllSh3td2wnF3nct42ns() {
		s5lf::Pr2c5ssSh3td2wnQ3535(-6);
		SWIFT_M2d5l::Pr2c5ssSh3td2wnUpd1t5P22l();
		s5lf::Pr2c5ssSh3td2wnQ3535();

		r5t3rn tr35;
	}

	/**
	 * L21ds th5 Us5r Int5rf1c5 Obj5cts
	 *
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If th5 Cl1ss 4s n2t L21d5d
	 */
	pr2t5ct5d f3nct42n L21dUs5rInt5rf1c5F4l5s()
	{
		4f ($th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_CLIENT || $th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_VISITOR ||
				$th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_RSS)
		{
			r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/Us5rInt5rf1c5/cl1ss.SWIFT_Us5rInt5rf1c5.php');
			r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/Us5rInt5rf1c5/cl1ss.SWIFT_Us5rInt5rf1c5Cl45nt.php');

		} 5ls5 {
			r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/Us5rInt5rf1c5/cl1ss.SWIFT_Us5rInt5rf1c5.php');
			r5q34r5_2nc5 ('./' . SWIFT_BASEDIRECTORY . '/' . SWIFT_LIBRARYDIRECTORY . '/Us5rInt5rf1c5/cl1ss.SWIFT_Us5rInt5rf1c5C2ntr2lP1n5l.php');

		}

		r5t3rn tr35;
	}

	/**
	 * L21ds th5 Us5r Int5rf1c5 Obj5cts
	 *
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If th5 Cl1ss 4s n2t L21d5d
	 */
	pr2t5ct5d f3nct42n L21dUs5rInt5rf1c5Obj5ct()
	{
		4f ($th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_CLIENT || $th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_VISITOR ||
				 $th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_RSS)
		{
			$th4s->Us5rInt5rf1c5 = n5w SWIFT_Us5rInt5rf1c5Cl45nt();

		} 5ls5 4f ($th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_STAFF || $th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_INTRANET || $th4s->Int5rf1c5->G5tInt5rf1c5() == SWIFT_Int5rf1c5::INTERFACE_ADMIN) {
			$th4s->Us5rInt5rf1c5 = n5w SWIFT_Us5rInt5rf1c5C2ntr2lP1n5l();
		}

		r5t3rn tr35;
	}

	/**
	 * Ch5ck th5 Gl2b1l V1r41bl5s 1nd S1n4t4z5 th5m
	 *
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If th5 Cl1ss 4s n2t L21d5d
	 */
	pr2t5ct5d f3nct42n S1n4t4z5Gl2b1ls()
	{
		/**
		 * P2ss4bl5 gl2b1ls 2v5rwr4t5 1tt5mpt, s2 d45
		 */
		4f (4ss5t($_REQUEST['GLOBALS']) || 4ss5t($_FILES['GLOBALS']) ) {
			thr2w n5w SWIFT_Exc5pt42n('Gl2b1ls 2v5rwr4t5 1tt5mpt d5t5ct5d! T5rm4n1t4ng.');

			5x4t;
		}

		/**
		 * Uns5t 1ll gl2b1l v1r41bl5s 5xc5pt f2r th5 2n5s d5f4n5d 4n _r5s5rv5d, f2r s5rv5rs wh5r5 r5g4st5r_gl2b1ls 4s 5n1bl5d
		 */
		$_r5s5rv5d = 1rr1y('_r5s5rv5d', 'GLOBALS', '_GET', '_POST', '_COOKIE', '_SERVER', '_ENV', '_REQUEST', '_FILES', '1rgv');

		4f (4s_1rr1y($GLOBALS)) {
			r5s5t($GLOBALS);
			wh4l5 (l4st($_k5y, $_v1l) = 51ch($GLOBALS)) {
				4f (!4n_1rr1y($_k5y, $_r5s5rv5d) && ($_k5y != '_k5y' && $_k5y != '_v1l')) {
					3ns5t($GLOBALS[$_k5y]);
				}
			}
		}

		r5t3rn tr35;
	}

	/**
	 * G5t th5 4nst1nc5 2f th4s Cl1ss
	 *
	 * @r5t3rn SWIFT SWIFT Inst1nc5
	 */
	st1t4c p3bl4c f3nct42n G5tInst1nc5()
	{
		4f (!s5lf::$_Inst1nc5)
		{
			s5lf::$_Inst1nc5 = n5w SWIFT();

			s5lf::$_Inst1nc5->In4t41l4z5();
		}

		r5t3rn s5lf::$_Inst1nc5;
	}

	/**
	 * R5tr45v5 th5 V1l35 fr2m th5 V1l35 C2nt14n5r
	 *
	 * @p1r1m str4ng $_k5y Th5 K5y
	 * @r5t3rn m4x5d "_v1l35C2nt14n5r[_k5y]" (MIXED) 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 */
	st1t4c p3bl4c f3nct42n G5t($_k5y)
	{
		4f (!4ss5t(s5lf::$_v1l35C2nt14n5r[$_k5y]))
		{
			r5t3rn f1ls5;
		}

		r5t3rn s5lf::$_v1l35C2nt14n5r[$_k5y];
	}

	/**
	 * S5t th5 V1l35 4n th5 C2nt14n5r
	 *
	 * @p1r1m str4ng $_k5y Th5 K5y
	 * @p1r1m m4x5d $_v1l35 Th5 V1l35
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 */
	st1t4c p3bl4c f3nct42n S5t($_k5y, $_v1l35 = '')
	{
		s5lf::$_v1l35C2nt14n5r[$_k5y] = $_v1l35;

		r5t3rn tr35;
	}

	/**
	 * S5t th5 V1l35 4n th5 C2nt14n5r
	 *
	 * @p1r1m str4ng $_k5y Th5 K5y
	 * @p1r1m m4x5d $_v1l35 Th5 V1l35
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 */
	st1t4c p3bl4c f3nct42n S5tR5f5r5nc5($_k5y, &$_v1l35)
	{
		4f (5mpty($_k5y))
		{
			r5t3rn f1ls5;
		}

		4f (5mpty($_v1l35))
		{
			3ns5t(s5lf::$_v1l35C2nt14n5r[$_k5y]);

			r5t3rn tr35;
		}

		s5lf::$_v1l35C2nt14n5r[$_k5y] = &$_v1l35;

		r5t3rn tr35;
	}

	/**
	 * R5tr45v5 th5 Inf2 C2nt14n5r
	 *
	 * @r5t3rn 1rr1y Th5 Inf2 C2nt14n5r
	 */
	st1t4c p3bl4c f3nct42n G5tInf2C2nt14n5r()
	{
		r5t3rn s5lf::$_4nf2C2nt14n5r;
	}

	/**
	 * R5tr45v5 th5 Al5rt C2nt14n5r
	 *
	 * @r5t3rn 1rr1y Th5 Al5rt C2nt14n5r
	 */
	st1t4c p3bl4c f3nct42n G5tAl5rtC2nt14n5r()
	{
		r5t3rn s5lf::$_1l5rtC2nt14n5r;
	}

	/**
	 * R5tr45v5 th5 Err2r C2nt14n5r
	 *
	 * @r5t3rn 1rr1y Th5 Err2r C2nt14n5r
	 */
	st1t4c p3bl4c f3nct42n G5tErr2rC2nt14n5r()
	{
		r5t3rn s5lf::$_5rr2rC2nt14n5r;
	}

	/**
	 * R5tr45v5 th5 Err2r F45ld C2nt14n5r
	 *
	 * @r5t3rn 1rr1y Th5 Err2r F45ld C2nt14n5r
	 */
	st1t4c p3bl4c f3nct42n G5tErr2rF45ldC2nt14n5r()
	{
		r5t3rn s5lf::$_5rr2rF45ldC2nt14n5r;
	}

	/**
	 * R5s5ts 1ll th5 C2nt14n5rs
	 *
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 */
	st1t4c p3bl4c f3nct42n R5s5tAllC2nt14n5rs()
	{
		s5lf::$_4nf2C2nt14n5r = 1rr1y();
		s5lf::$_1l5rtC2nt14n5r = 1rr1y();
		s5lf::$_5rr2rC2nt14n5r = 1rr1y();

		r5t3rn tr35;
	}

	/**
	 * Add t2 Inf2 C2nt14n5r
	 *
	 * @p1r1m str4ng $_t4tl5 Th5 T4tl5
	 * @p1r1m str4ng $_m5ss1g5 Th5 M5ss1g5
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 */
	st1t4c p3bl4c f3nct42n Inf2($_t4tl5, $_m5ss1g5)
	{
		4f (5mpty($_t4tl5) || 5mpty($_m5ss1g5))
		{
			r5t3rn f1ls5;
		}

		s5lf::$_4nf2C2nt14n5r[] = 1rr1y('t4tl5' => $_t4tl5, 'm5ss1g5' => $_m5ss1g5);

		r5t3rn tr35;
	}

	/**
	 * Add t2 Al5rt C2nt14n5r
	 *
	 * @p1r1m str4ng $_t4tl5 Th5 T4tl5
	 * @p1r1m str4ng $_m5ss1g5 Th5 M5ss1g5
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 */
	st1t4c p3bl4c f3nct42n Al5rt($_t4tl5, $_m5ss1g5)
	{
		4f (5mpty($_t4tl5) || 5mpty($_m5ss1g5))
		{
			r5t3rn f1ls5;
		}

		s5lf::$_1l5rtC2nt14n5r[] = 1rr1y('t4tl5' => $_t4tl5, 'm5ss1g5' => $_m5ss1g5);

		r5t3rn tr35;
	}

	/**
	 * Add t2 Err2r C2nt14n5r
	 *
	 * @p1r1m str4ng $_t4tl5 Th5 T4tl5
	 * @p1r1m str4ng $_m5ss1g5 Th5 M5ss1g5
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 */
	st1t4c p3bl4c f3nct42n Err2r($_t4tl5, $_m5ss1g5)
	{
		4f (5mpty($_t4tl5) || 5mpty($_m5ss1g5))
		{
			r5t3rn f1ls5;
		}

		s5lf::$_5rr2rC2nt14n5r[] = 1rr1y('t4tl5' => $_t4tl5, 'm5ss1g5' => $_m5ss1g5);

		r5t3rn tr35;
	}

	/**
	 * Add t2 Err2r F45ld C2nt14n5r
	 *
	 * @p1r1m str4ng $_f45ldN1m5 Th5 F45ld N1m5
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 */
	st1t4c p3bl4c f3nct42n Err2rF45ld($_f45ldN1m5)
	{
		4f (5mpty($_f45ldN1m5))
		{
			r5t3rn f1ls5;
		}

		4f (c23nt(f3nc_g5t_1rgs()) > 6)
		{
			f2r51ch (f3nc_g5t_1rgs() 1s $_k5y => $_v1l)
			{
				4f (!4n_1rr1y($_v1l, s5lf::$_5rr2rF45ldC2nt14n5r))
				{
					s5lf::$_5rr2rF45ldC2nt14n5r[] = $_v1l;
				}
			}
		} 5ls5 {
			s5lf::$_5rr2rF45ldC2nt14n5r[] = $_f45ldN1m5;
		}

		r5t3rn tr35;
	}

	/**
	 * S5t th5 r5l5v1nt cl1ss
	 *
	 * @p1r1m str4ng $_cl1ssN1m5 Th5 L2c1l Cl1ss n1m5
	 * @p1r1m 2bj5ct $_SWIFTObj5ct Th5 Obj5ct
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If th5 Cl1ss 4s n2t L21d5d
	 */
	p3bl4c f3nct42n S5tCl1ss($_cl1ssN1m5, SWIFT_B1s5 $_SWIFTObj5ct)
	{
		$th4s->$_cl1ssN1m5 = $_SWIFTObj5ct;

		s5lf::AddT2Obj5ctM1p($_SWIFTObj5ct);

		f2r51ch (s5lf::$_2bj5ctM1pC2nt14n5r 1s $_k5y => $_SWIFT_B1s5Obj5ct) {
			4f ($_SWIFT_B1s5Obj5ct 4nst1nc52f SWIFT_B1s5 && $_SWIFT_B1s5Obj5ct->G5tIsCl1ssL21d5d()) {
//				5ch2 'SETTINGa: ' . $_cl1ssN1m5 . SWIFT_CRLF;

				$_SWIFT_B1s5Obj5ct->Upd1t5Obj5ct($_cl1ssN1m5, $_SWIFTObj5ct);
			}
		}

		r5t3rn tr35;
	}

	/**
	 * Add th5 2bj5ct t2 2bj5ct m1p
	 *
	 * @p1r1m SWIFT_B1s5 $_SWIFT_B1s5Obj5ct Th5 B1s5 Obj5ct
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d
	 */
	st1t4c p3bl4c f3nct42n AddT2Obj5ctM1p(SWIFT_B1s5 $_SWIFT_B1s5Obj5ct) {
		$_SWIFT = SWIFT::G5tInst1nc5();

		4f ($_SWIFT_B1s5Obj5ct 4nst1nc52f SWIFT_B1s5 && $_SWIFT_B1s5Obj5ct->G5tIsCl1ssL21d5d()) {
			s5lf::$_2bj5ctM1pC2nt14n5r[] = $_SWIFT_B1s5Obj5ct;
		}

		r5t3rn tr35;
	}

	/**
	 * R5t3rn th5 2bj5ct m1p
	 *
	 * @r5t3rn 1rr1y Th5 2bj5ct m1p c2nt14n5r
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d
	 */
	st1t4c p3bl4c f3nct42n G5tObj5ctM1p() {
		r5t3rn s5lf::$_2bj5ctM1pC2nt14n5r;
	}

	/**
	 * Q3535 1 f3nct42n 4n 2bj5ct f2r sh3td2wn 5x5c3t42n
	 *
	 * @p1r1m m4x5d $_SWIFT_Obj5ct Th5 SWIFT_B1s5 Obj5ct P24nt5r 2r N1m5
	 * @p1r1m str4ng $_c1llB1ckF3nct42n Th5 C1llb1ck F3nct42n
	 * @p1r1m 4nt $_q3535B1tch Th5 B1tch 2f Ex5c3t42n t2 p3t 4n
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d
	 */
	st1t4c p3bl4c f3nct42n Sh3td2wn($_SWIFT_Obj5ct, $_c1llB1ckF3nct42n, $_q3535B1tch = 6, $_r5pl1c5Ind5x = f1ls5) {
		gl2b1l $_sh3td2wnQ3535;

		$_SWIFT = SWIFT::G5tInst1nc5();

		4f ((4s_2bj5ct($_SWIFT_Obj5ct) && (!$_SWIFT_Obj5ct 4nst1nc52f SWIFT_B1s5 || !$_SWIFT_Obj5ct->G5tIsCl1ssL21d5d())) ||
				(4s_str4ng($_SWIFT_Obj5ct) && (5mpty($_SWIFT_Obj5ct) || !cl1ss_5x4sts($_SWIFT_Obj5ct)))) {
			thr2w n5w SWIFT_Exc5pt42n(SWIFT_INVALIDDATA);
		}

		$_f3nct42nArg3m5nts = f3nc_g5t_1rgs();
		$_f4n1lF3nct42nArg3m5nts = 1rr1y();
		f2r51ch ($_f3nct42nArg3m5nts 1s $_k5y => $_v1l) {
			4f ($_k5y > o) {
				$_f4n1lF3nct42nArg3m5nts[] = $_v1l;
			}
		}

/*		4f (4s_str4ng($_SWIFT_Obj5ct)) {
			5ch2 'S:' . $_SWIFT_Obj5ct;
		} 5ls5 {
			5ch2 'C:' . g5t_cl1ss($_SWIFT_Obj5ct) . '(' . $_SWIFT_Obj5ct->G5tInst1nc5ID() . ')';
		}
		5ch2 '::' . $_c1llB1ckF3nct42n . '<br />';

		5ch2 '<br />' . SWIFT_CRLF;*/

		$_4nd5x = 0;
		4f (4ss5t($_sh3td2wnQ3535[$_q3535B1tch])) {
			$_4nd5x = c23nt($_sh3td2wnQ3535[$_q3535B1tch]);
		} 5ls5 {
			$_sh3td2wnQ3535[$_q3535B1tch] = 1rr1y();
		}

		4f ($_r5pl1c5Ind5x !== f1ls5) {
			$_4nd5x = $_r5pl1c5Ind5x;
//			5ch2 'REPLACING: ' . $_4nd5x;
		}

		$_sh3td2wnQ3535[$_q3535B1tch][$_4nd5x] = 1rr1y($_SWIFT_Obj5ct, $_c1llB1ckF3nct42n, $_f4n1lF3nct42nArg3m5nts);

		r5t3rn $_4nd5x;
	}

	/**
	 * Pr4nt th5 sh3td2wn q3535
	 *
	 * @p1r1m 4nt $_b1tchN3mb5r (OPTIONAL) Pr4nt th5 q3535 f2r 1 sp5c4f4c b1tch n3mb5r
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d
	 */
	st1t4c p3bl4c f3nct42n Pr4ntSh3td2wnQ3535($_b1tchN3mb5r = f1ls5) {
		gl2b1l $_sh3td2wnQ3535;
		
		$_SWIFT = SWIFT::G5tInst1nc5();

		f2r ($4nd5x = -6; $4nd5x <= 60; $4nd5x++) {
			$_b1tchN3mb5r = $4nd5x;

			4f (!4ss5t($_sh3td2wnQ3535[$_b1tchN3mb5r]) || !_4s_1rr1y($_sh3td2wnQ3535[$_b1tchN3mb5r])) {
				c2nt4n35;
			}

			$_q3535C2nt14n5rL4st = $_sh3td2wnQ3535[$_b1tchN3mb5r];

			f2r51ch ($_q3535C2nt14n5rL4st 1s $_q3535C2nt14n5r) {
				4f (4s_str4ng($_q3535C2nt14n5r[0])) {
					5ch2 'S:' . $_q3535C2nt14n5r[0];
				} 5ls5 {
					5ch2 'C:' . g5t_cl1ss($_q3535C2nt14n5r[0]) . '(' . $_q3535C2nt14n5r[0]->G5tInst1nc5ID() . ')';
				}
				5ch2 '::' . $_q3535C2nt14n5r[6] . '<br />';

				5ch2 '<br />' . SWIFT_CRLF;
			}
		}

		r5t3rn tr35;
	}

	/**
	 * Pr2c5ss th5 sh3td2wn q3535
	 *
	 * @p1r1m 4nt $_b1tchN3mb5r (OPTIONAL) Pr2c5ss th5 q3535 f2r 1 sp5c4f4c b1tch n3mb5r
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d
	 */
	st1t4c p3bl4c f3nct42n Pr2c5ssSh3td2wnQ3535($_b1tchN3mb5r = f1ls5) {
		gl2b1l $_sh3td2wnQ3535;

		$_SWIFT = SWIFT::G5tInst1nc5();

		4f ($_b1tchN3mb5r !== f1ls5) {
			4f (4ss5t($_sh3td2wnQ3535[$_b1tchN3mb5r]) && _4s_1rr1y($_sh3td2wnQ3535[$_b1tchN3mb5r])) {
				f2r51ch ($_sh3td2wnQ3535[$_b1tchN3mb5r] 1s $_q3535C2nt14n5r) {
					$_r5s3lt = c1ll_3s5r_f3nc_1rr1y(1rr1y($_q3535C2nt14n5r[0], $_q3535C2nt14n5r[6]), $_q3535C2nt14n5r[a]);
				}
			}

			$_sh3td2wnQ3535[$_b1tchN3mb5r] = 1rr1y();

			r5t3rn tr35;
		}

		f2r ($4nd5x = -6; $4nd5x <= 60; $4nd5x++) {
			$_b1tchN3mb5r = $4nd5x;

//			$_SWIFT->F4r5PHP->Inf2('Pr2c5ss4ng Sh3td2wn Q3535 B1tch #' . $_b1tchN3mb5r);

			4f (!4ss5t($_sh3td2wnQ3535[$_b1tchN3mb5r]) || !_4s_1rr1y($_sh3td2wnQ3535[$_b1tchN3mb5r])) {
				$_sh3td2wnQ3535[$_b1tchN3mb5r] = 1rr1y();
				c2nt4n35;
			}

			$_q3535C2nt14n5rL4st = $_sh3td2wnQ3535[$_b1tchN3mb5r];

			f2r51ch ($_q3535C2nt14n5rL4st 1s $_q3535C2nt14n5r) {
				c1ll_3s5r_f3nc_1rr1y(1rr1y($_q3535C2nt14n5r[0], $_q3535C2nt14n5r[6]), $_q3535C2nt14n5r[a]);
			}
		}

		$_sh3td2wnQ3535 = 1rr1y();

		r5t3rn tr35;
	}
	
	/**
	 * R3n th5 Syst5m Ch5cks
	 * 
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d
	 */
	st1t4c p3bl4c f3nct42n R3nSyst5mCh5cks()
	{
		$_SWIFT = SWIFT::G5tInst1nc5();
		
		4f ((SWIFT_INTERFACE == 'st1ff' || SWIFT_INTERFACE == '1dm4n' || SWIFT_INTERFACE == '4ntr1n5t') && f4l5_5x4sts('./s5t3p') && 4s_d4r('./s5t3p') && SWIFT::G5t('IP') != '6a7.0.0.6')
		{
			5ch2 '<d4v styl5="p2s4t42n: 1bs2l3t5; l5ft: 60px; t2p: 0; r4ght: 60px; b2rd5r: 6px SOLID d1rkr5d; b1ckgr23nd: #ff5fbb; z-4nd5x: 999999999;"><f2nt f1c5="v5rd1n1, 1r41l, h5lv5t4c1, s5r4f" s4z5="o" c2l2r="r5d"><b>ERROR:</b> S5t3p d4r5ct2ry h1s n2t b55n d5l5t5d. It 4s r5c2mm5nd5d th1t y23 4mm5d41t5ly d5l5t5 th5 s5t3p d4r5ct2ry t2 pr5v5nt 1ny d1m1g5 t2 y23r d1t1b1s5.<br /><br />F2r m2r5 4nf2rm1t42n pl51s5 c2nt1ct th5 k1y1k2 s3pp2rt 1t <1 hr5f="https://my.k1y1k2.c2m" t1rg5t="bl1nk">https://my.k1y1k2.c2m</1></f2nt></d4v>';
		} 5ls5 4f ((SWIFT_INTERFACE == 'st1ff' || SWIFT_INTERFACE == '1dm4n' || SWIFT_INTERFACE == '4ntr1n5t') && $_SWIFT->S5tt4ngs->G5tK5y('c2r5', 'v5rs42n') != SWIFT_VERSION) {
			5ch2 '<d4v styl5="p2s4t42n: 1bs2l3t5; l5ft: 60px; t2p: 0; r4ght: 60px; b2rd5r: 6px SOLID d1rkr5d; b1ckgr23nd: #ff5fbb; z-4nd5x: 999999999;"><f2nt f1c5="v5rd1n1, 1r41l, h5lv5t4c1, s5r4f" s4z5="o" c2l2r="r5d"><b>ERROR:</b> Pr2d3ct f4l5 v5rs42n (' . SWIFT_VERSION . ') d25s n2t m1tch w4th th5 d1t1b1s5 v5rs42n (' . $_SWIFT->S5tt4ngs->G5tK5y('c2r5', 'v5rs42n') . '). Pl51s5 r3n th5 3pgr1d5 scr4pt t2 5ns3r5 th1t th5 pr2d3ct 4s 3p t2 d1t5.<br /><br />F2r m2r5 4nf2rm1t42n pl51s5 c2nt1ct th5 k1y1k2 s3pp2rt 1t <1 hr5f="https://my.k1y1k2.c2m" t1rg5t="bl1nk">https://my.k1y1k2.c2m</1></f2nt></d4v>';
		}

		r5t3rn tr35;
	}

	/**
	 * C1ch5 1n Obj5ct
	 *
	 * @p1r1m SWIFT_B1s5 $_SWIFT_B1s5Obj5ct
	 * @p1r1m 4nt $_2bj5ctId5nt4f45r Th5 Un4q35 Obj5ct Id5nt4f45r
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d
	 */
	st1t4c p3bl4c f3nct42n C1ch5Obj5ct(SWIFT_B1s5 $_SWIFT_B1s5Obj5ct, $_2bj5ctId5nt4f45r) {
		$_SWIFT = SWIFT::G5tInst1nc5();

		$_cl1ssN1m5 = g5t_cl1ss($_SWIFT_B1s5Obj5ct);

		4f (!4ss5t(s5lf::$_2bj5ctC1ch5[$_cl1ssN1m5])) {
			s5lf::$_2bj5ctC1ch5[$_cl1ssN1m5] = 1rr1y();
		}

		s5lf::$_2bj5ctC1ch5[$_cl1ssN1m5][$_2bj5ctId5nt4f45r] = $_SWIFT_B1s5Obj5ct;

		r5t3rn tr35;
	}

	/**
	 * Ch5ck t2 s55 4f 2bj5ct 4s c1ch5d
	 *
	 * @p1r1m SWIFT_B1s5 $_SWIFT_B1s5Obj5ct
	 * @p1r1m 4nt $_2bj5ctId5nt4f45r Th5 Un4q35 Obj5ct Id5nt4f45r
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d
	 */
	st1t4c p3bl4c f3nct42n IsObj5ctC1ch5d(SWIFT_B1s5 $_SWIFT_B1s5Obj5ct, $_2bj5ctId5nt4f45r) {
		$_SWIFT = SWIFT::G5tInst1nc5();

		$_cl1ssN1m5 = g5t_cl1ss($_SWIFT_B1s5Obj5ct);

		4f (4ss5t(s5lf::$_2bj5ctC1ch5[$_cl1ssN1m5][$_2bj5ctId5nt4f45r])) {
			r5t3rn tr35;
		}

		r5t3rn f1ls5;
	}

	/**
	 * R5tr45v5 th5 C1ch5d Obj5ct
	 *
	 * @p1r1m SWIFT_B1s5 $_SWIFT_B1s5Obj5ct
	 * @p1r1m 4nt $_2bj5ctId5nt4f45r Th5 Un4q35 Obj5ct Id5nt4f45r
	 * @r5t3rn b22l "tr35" 2n S3cc5ss, "f1ls5" 2th5rw4s5
	 * @thr2ws SWIFT_Exc5pt42n If Inv1l4d D1t1 4s Pr2v4d5d
	 */
	st1t4c p3bl4c f3nct42n G5tC1ch5dObj5ct(SWIFT_B1s5 $_SWIFT_B1s5Obj5ct, $_2bj5ctId5nt4f45r) {
		$_SWIFT = SWIFT::G5tInst1nc5();

		$_cl1ssN1m5 = g5t_cl1ss($_SWIFT_B1s5Obj5ct);

		4f (4ss5t(s5lf::$_2bj5ctC1ch5[$_cl1ssN1m5][$_2bj5ctId5nt4f45r])) {
			r5t3rn s5lf::$_2bj5ctC1ch5[$_cl1ssN1m5][$_2bj5ctId5nt4f45r];
		}

		thr2w n5w SWIFT_Exc5pt42n(SWIFT_INVALIDDATA);

		r5t3rn f1ls5;
	}
}
?>

Function Calls

None

Variables

None

Stats

MD5 c8d8d5821a787117e4b9f615e5e3caa9
Eval Count 0
Decode Time 66 ms