#!/usr/bin/perl
# ----------------------------------------------------------------------------
# Article Manager 1.29
# Copyright (C) 2003 interactivetools.com, inc. All Rights Reserved
# http://www.interactivetools.com/
# ----------------------------------------------------------------------------
# This program is protected by Canadian and international copyright laws. Any
# use of this program is subject to the the terms of the license agreement
# included as part of this distribution archive. Any other uses are strictly
# prohibited without the written permission of interactivetools.com and all
# other rights are reserved.
# -----------------------------------------------------------------------------
# Warning : Modifying this program violates your license agreement!
# -----------------------------------------------------------------------------
BEGIN{@z=('73796e6469636174652f77697a6172645f6d656e75732e68'
.'746d6c','776562666565645f67656e5f616374697665','75726c5f70'
.'75626c697368','64697361626c6564','7469746c65626172','6d617'
.'85f686561646c696e6573','7075626c6973685f73796e646963617465'
.'5f717479','686561646c696e6573','63617465676f7279','73706c6'
.'17368','73796e6469636174652f73706c6173682e68746d6c','68656'
.'c70','73796e6469636174652f68656c702e68746d6c','6672616d657'
.'36574','64656661756c745f686561646c696e655f7374796c65','736'
.'f72745f6f72646572','686561646572','636f6c6f725f7069636b657'
.'2','73696d706c65','686561646c696e655f7374796c65','63757374'
.'6f6d','5f64656661756c74','5f64656661756c745f746f','6375737'
.'46f6d5f73657474696e6773','2073656c6563746564','686561646c6'
.'96e655f7374796c655f6c697374','6d656e755f686561646572','616'
.'476616e636564','70726576696577','766965775f636f6465','6a73'
.'5f696e636c7564655f75726c','7075626c6973685f73796e646963617'
.'4655f66696c65707265666978','2e6a73','6361745f6e616d65','67'
.'6361745f6e616d65','636174','6e616d65','7469746c655f666f6e7'
.'466616365','646174655f666f6e7466616365','73756d6d6172795f6'
.'66f6e7466616365','636f64655f686561646572','73796e646963617'
.'4652f776562666565642e68746d6c','636f64655f666f6f746572','7'
.'07265766965775f686561646572','707265766965775f666f6f746572',
'64656661756c745f616374696f6e','70726f675f6e616d65','417274'
.'69636c65204d616e61676572','70726f675f6e616d6532','6172746d'
.'616e','70726f675f766572','312e3239','70726f675f6b6579','73'
.'706172655f6669656c6473','5343524950545f46494c454e414d45',''
.'617274','41727469636c6520456469746f72','6d656e755f74656d70'
.'6c617465','5f6172745f6d656e75732e68746d6c','6461746166696c'
.'65','61727469636c652e646174','6669656c6473','6e756d2063726'
.'56174656420637265617465645f6279207570646174656420757064617'
.'465645f6279206d6f6e206461792079656172206e616d652073756d6d6'
.'1727920636f6e74656e7420','73756d6d6172795f666f726d61742063'
.'6f6e74656e745f666f726d61742063617420','7566696c655f696d616'
.'76531207566696c655f696d61676532207566696c655f696d616765332'
.'07566696c655f696d61676534207566696c655f696d616765352075666'
.'96c655f696d61676536207566696c655f696d61676537207566696c655'
.'f696d61676538207566696c655f696d61676539207566696c655f696d6'
.'16765313020','63617074696f6e312063617074696f6e322063617074'
.'696f6e332063617074696f6e342063617074696f6e352063617074696f'
.'6e362063617074696f6e372063617074696f6e382063617074696f6e39'
.'2063617074696f6e313020','686f7572206d696e20616d706d206f776'
.'e6572206c696e6b206172745f74797065207566696c655f646f63756d6'
.'56e742068696464656e20','696d6167656e616d653120696d6167656e'
.'616d653220696d6167656e616d653320696d6167656e616d653420696d'
.'6167656e616d653520696d6167656e616d653620696d6167656e616d65'
.'3720696d6167656e616d653820696d6167656e616d653920696d616765'
.'6e616d65313020','696d61676577696474685f696d6167653120696d6'
.'1676577696474685f696d6167653220696d61676577696474685f696d6'
.'167653320696d61676577696474685f696d6167653420696d616765776'
.'96474685f696d6167653520696d61676577696474685f696d616765362'
.'0696d61676577696474685f696d6167653720696d61676577696474685'
.'f696d6167653820696d61676577696474685f696d6167653920696d616'
.'76577696474685f696d616765313020','696d6167656865696768745f'
.'696d6167653120696d6167656865696768745f696d6167653220696d61'
.'67656865696768745f696d6167653320696d6167656865696768745f69'
.'6d6167653420696d6167656865696768745f696d6167653520696d6167'
.'656865696768745f696d6167653620696d6167656865696768745f696d'
.'6167653720696d6167656865696768745f696d6167653820696d616765'
.'6865696768745f696d6167653920696d6167656865696768745f696d61'
.'6765313020','73746174757320','7370617265312073706172653220'
.'7370617265332073706172653420737061726535207370617265362073'
.'7061726537207370617265382073706172653920737061726531302073'
.'706172653131207370617265313220','7374616d7020','7566696c65'
.'5f696d6167653131207566696c655f696d6167653132207566696c655f'
.'696d6167653133207566696c655f696d6167653134207566696c655f69'
.'6d6167653135207566696c655f696d6167653136207566696c655f696d'
.'6167653137207566696c655f696d6167653138207566696c655f696d61'
.'67653139207566696c655f696d6167653230207566696c655f696d6167'
.'653231207566696c655f696d6167653232207566696c655f696d616765'
.'3233207566696c655f696d6167653234207566696c655f696d61676532'
.'3520','696d6167656e616d65313120696d6167656e616d65313220696'
.'d6167656e616d65313320696d6167656e616d65313420696d6167656e6'
.'16d65313520696d6167656e616d65313620696d6167656e616d6531372'
.'0696d6167656e616d65313820696d6167656e616d65313920696d61676'
.'56e616d65323020696d6167656e616d65323120696d6167656e616d653'
.'23220696d6167656e616d65323320696d6167656e616d65323420696d6'
.'167656e616d65323520','696d61676577696474685f696d6167653131'
.'20696d61676577696474685f696d616765313220696d61676577696474'
.'685f696d616765313320696d61676577696474685f696d616765313420'
.'696d61676577696474685f696d616765313520696d6167657769647468'
.'5f696d616765313620696d61676577696474685f696d61676531372069'
.'6d61676577696474685f696d616765313820696d61676577696474685f'
.'696d616765313920696d61676577696474685f696d616765323020696d'
.'61676577696474685f696d616765323120696d61676577696474685f69'
.'6d616765323220696d61676577696474685f696d616765323320696d61'
.'676577696474685f696d616765323420696d61676577696474685f696d'
.'616765323520','696d6167656865696768745f696d616765313120696'
.'d6167656865696768745f696d616765313220696d61676568656967687'
.'45f696d616765313320696d6167656865696768745f696d61676531342'
.'0696d6167656865696768745f696d616765313520696d6167656865696'
.'768745f696d616765313620696d6167656865696768745f696d6167653'
.'13720696d6167656865696768745f696d616765313820696d616765686'
.'5696768745f696d616765313920696d6167656865696768745f696d616'
.'765323020696d6167656865696768745f696d616765323120696d61676'
.'56865696768745f696d616765323220696d6167656865696768745f696'
.'d616765323320696d6167656865696768745f696d616765323420696d6'
.'167656865696768745f696d616765323520','66696c656e616d6520',
'7370617265313320737061726531342073706172653135207370617265'
.'3136207370617265313720737061726531382073706172653139207370'
.'617265323020','63617074696f6e31312063617074696f6e313220636'
.'17074696f6e31332063617074696f6e31342063617074696f6e3135206'
.'3617074696f6e31362063617074696f6e31372063617074696f6e31382'
.'063617074696f6e31392063617074696f6e32302063617074696f6e323'
.'12063617074696f6e32322063617074696f6e32332063617074696f6e3'
.'2342063617074696f6e323520','666f726d61745f7370617265312066'
.'6f726d61745f73706172653220666f726d61745f73706172653320666f'
.'726d61745f73706172653420666f726d61745f73706172653520666f72'
.'6d61745f73706172653620666f726d61745f73706172653720666f726d'
.'61745f73706172653820666f726d61745f73706172653920666f726d61'
.'745f7370617265313020666f726d61745f7370617265313120666f726d'
.'61745f7370617265313220666f726d61745f7370617265313320666f72'
.'6d61745f7370617265313420666f726d61745f7370617265313520666f'
.'726d61745f7370617265313620666f726d61745f737061726531372066'
.'6f726d61745f7370617265313820666f726d61745f7370617265313920'
.'666f726d61745f73706172653230','736561726368','736f72746279',
'2d237374616d7023','7075626c6973685f737562','6d656e755f7375'
.'6273','6572617365','6c697374','74656d70','4372656174652041'
.'727469636c65','5f7772697465725f6d656e75732e68746d6c','7465'
.'6d702e646174','43617465676f727920456469746f72','5f6361745f'
.'6d656e75732e68746d6c','63617465676f72792e646174','6e756d20'
.'6372656174656420637265617465645f62792075706461746564207570'
.'64617465645f6279206e616d6520736f7264657220','74656d706c617'
.'4655f66696c652061727469636c655f74656d706c6174655f66696c652'
.'0686561646c696e655f74656d706c6174655f66696c6520','7566696c'
.'655f696d616765207075625f66696c65707265666978207075625f6669'
.'6c657072656669785f7370656369667920','706572706167655f696e6'
.'4657820706572706167655f686561646c696e65732068696464656e207'
.'072696e7465725f74656d706c6174655f66696c6520','696d61676577'
.'696474685f696d61676520696d6167656865696768745f696d61676520'
.'7075625f706572706167655f73706563696679','23736f7264657223',
'61726368697665','41726368697665204d616e61676572','5f617263'
.'686976655f6d656e75732e68746d6c','617263686976652e646174',''
.'6e756d206372656174656420637265617465645f627920757064617465'
.'6420757064617465645f6279206e616d6520636f756e74','236e756d2'
.'3','6163636f756e74','5f6163636f756e745f6d656e75732e68746d6'
.'c','6163636f756e742e6461742e636769','6e756d206372656174656'
.'420637265617465645f6279207570646174656420757064617465645f6'
.'279206e616d652069642070772061636c206e6f7465732063617473206'
.'16c6c5f6361747320656d61696c5f6361747320656d61696c5f616c6c5'
.'f6361747320656d61696c5f6e6f74696669636174696f6e5f6576656e7'
.'47320656d61696c','6e616d65206964','73657373696f6e','736573'
.'73696f6e2e6461742e636769','7365747570','5f73657475705f6d65'
.'6e75732e68746d6c','73657475702e6461742e636769','6e756d2074'
.'69746c65626172','20636f6e6669726d5f657261736520636f6e66697'
.'26d5f736176656420636f6e6669726d5f6572617365642073657475705'
.'f7761726e696e67','2075706c6f61646c696d69742075706c6f61646d'
.'61782075706c6f61645f6865696768742075706c6f61645f7769647468'
.'2075706c6f6164657874206c686f7572206c686f75725f6f6666736574'
.'206c6d696e206c6d696e5f6f6666736574207265673120726567322072'
.'656733206420632069','206469725f62617365206469725f75706c6f6'
.'164206469725f7075626c697368','2075726c5f696d6167652075726c'
.'5f68656c702075726c5f75706c6f61642075726c5f7075626c69736820'
.'75726c5f6c6f676f6666207365617263685f75726c','2064656661756'
.'c745f6175746f666f726d617420616c6c6f775f68746d6c20616c6c6f7'
.'75f6172745f7479706573206175746f5f7075626c697368','20707562'
.'6c6973685f696e6465785f66696c65707265666978207075626c697368'
.'5f686561646c696e655f66696c65707265666978207075626c6973685f'
.'6361745f66696c65707265666978207075626c6973685f6361745f6865'
.'61646c696e655f66696c65707265666978207075626c6973685f617274'
.'5f66696c65707265666978207075626c6973685f6172745f7072696e74'
.'65725f66696c65707265666978207075626c6973685f6361745f6c6973'
.'745f66696c65707265666978207075626c6973685f73616d706c65725f'
.'66696c65707265666978207075626c6973685f66696c65657874','207'
.'075626c6973685f696e6465785f717479207075626c6973685f6865616'
.'46c696e655f717479207075626c6973685f6361745f717479207075626'
.'c6973685f6361745f686561646c696e655f717479207075626c6973685'
.'f73616d706c65725f717479','207075626c6973685f696e6465782070'
.'75626c6973685f686561646c696e6573207075626c6973685f63617420'
.'7075626c6973685f6361745f686561646c696e6573207075626c697368'
.'5f61727469636c65207075626c6973685f7072696e746572207075626c'
.'6973685f6c6973745f6f665f63617473207075626c6973685f73616d70'
.'6c6572','207075626c6973685f7365617263685f666f726d5f66696c6'
.'5707265666978207075626c6973685f7365617263685f666f726d','20'
.'676361745f6e616d65','20676c6f62616c5f75706461746564','2073'
.'6669656c645f6e616d653120736669656c645f6e616d65322073666965'
.'6c645f6e616d653320736669656c645f6e616d653420736669656c645f'
.'6e616d653520736669656c645f6e616d653620736669656c645f6e616d'
.'653720736669656c645f6e616d653820736669656c645f6e616d653920'
.'736669656c645f6e616d65313020736669656c645f6e616d6531312073'
.'6669656c645f6e616d653132','20736669656c645f6f7264657231207'
.'36669656c645f6f726465723220736669656c645f6f726465723320736'
.'669656c645f6f726465723420736669656c645f6f72646572352073666'
.'9656c645f6f726465723620736669656c645f6f7264657237207366696'
.'56c645f6f726465723820736669656c645f6f726465723920736669656'
.'c645f6f72646572313020736669656c645f6f726465723131207366696'
.'56c645f6f726465723132','20736669656c645f747970653120736669'
.'656c645f747970653220736669656c645f747970653320736669656c64'
.'5f747970653420736669656c645f747970653520736669656c645f7479'
.'70653620736669656c645f747970653720736669656c645f7479706538'
.'20736669656c645f747970653920736669656c645f7479706531302073'
.'6669656c645f74797065313120736669656c645f747970653132','207'
.'075626c6973685f73796e6469636174655f66696c65707265666978207'
.'075626c6973685f73796e6469636174655f717479207075626c6973685'
.'f73796e64696361746520776562666565645f67656e5f616374697665',
'2076206272616e64696e6720666f6f746572207374617469635f617263'
.'686976655f7061676573207669657765725f75726c207669657765725f'
.'70617468696e666f20616c6c6f775f6172745f66696c656e616d65','2'
.'0736669656c645f6e616d65313320736669656c645f6e616d653134207'
.'36669656c645f6e616d65313520736669656c645f6e616d65313620736'
.'669656c645f6e616d65313720736669656c645f6e616d6531382073666'
.'9656c645f6e616d65313920736669656c645f6e616d653230','207366'
.'69656c645f6f72646572313320736669656c645f6f7264657231342073'
.'6669656c645f6f72646572313520736669656c645f6f72646572313620'
.'736669656c645f6f72646572313720736669656c645f6f726465723138'
.'20736669656c645f6f72646572313920736669656c645f6f7264657232'
.'30','20736669656c645f74797065313320736669656c645f747970653'
.'13420736669656c645f74797065313520736669656c645f74797065313'
.'620736669656c645f74797065313720736669656c645f7479706531382'
.'0736669656c645f74797065313920736669656c645f747970653230',''
.'20736f7274316669656c6420736f7274317265766572736520736f7274'
.'316e756d6572696320736f7274326669656c6420736f72743272657665'
.'72736520736f7274326e756d6572696320736f7274336669656c642073'
.'6f7274337265766572736520736f7274336e756d65726963','2073756'
.'d6d6172795f6e616d6520636f6e74656e745f6e616d652073756d6d617'
.'2795f7479706520636f6e74656e745f747970652073756d6d6172795f6'
.'56e61626c656420636f6e74656e745f656e61626c6564','2073666965'
.'6c645f656e61626c65643120736669656c645f656e61626c6564322073'
.'6669656c645f656e61626c65643320736669656c645f656e61626c6564'
.'3420736669656c645f656e61626c65643520736669656c645f656e6162'
.'6c65643620736669656c645f656e61626c65643720736669656c645f65'
.'6e61626c65643820736669656c645f656e61626c65643920736669656c'
.'645f656e61626c6564313020736669656c645f656e61626c6564313120'
.'736669656c645f656e61626c6564313220736669656c645f656e61626c'
.'6564313320736669656c645f656e61626c6564313420736669656c645f'
.'656e61626c6564313520736669656c645f656e61626c65643136207366'
.'69656c645f656e61626c6564313720736669656c645f656e61626c6564'
.'313820736669656c645f656e61626c6564313920736669656c645f656e'
.'61626c65643230','207075626c6973685f68696464656e5f696e64657'
.'820656d61696c5f6e6f74696669636174696f6e5f656e61626c6564206'
.'d61696c5f73656e6465725f656d61696c206d61696c5f73656e6465725'
.'f6e616d65206d61696c5f6d61696c6572206d61696c5f73656e646d616'
.'96c206d61696c5f736d7470206d61696c5f706f703361757468206d616'
.'96c5f706f7033206d61696c5f706f703375736572206d61696c5f706f7'
.'03370617373','48415348','44425f5365656b203a205468652066697'
.'2737420617267756d656e74206d7573742062652061204841534820726'
.'5666572656e636521','44425f5365656b203a20546865207365636f6e'
.'6420617267756d656e74206d7573742062652061204841534820726566'
.'6572656e636521','44425f5365656b203a204e6f207365656b2066696'
.'56c64207761732073706563696669656421','43','6669656c646e',''
.'44425f4c697374203a2054686520666972737420617267756d656e7420'
.'6d75737420626520612048415348207265666572656e636521','434f4'
.'445','44425f4c697374203a20546865207365636f6e6420617267756d'
.'656e74206d757374206265206120434f4445207265666572656e636521',
'44425f4c697374203a2054686520666f7572746820617267756d656e74'
.'206d75737420626520612048415348207265666572656e636521','444'
.'25f4c697374203a20416e6f6e207375622024726f77636f64652069732'
.'06e6f7420646566696e656421','44425f4c697374203a204e6f206461'
.'746166696c6520646566696e656420696e206461746162617365206465'
.'66696e6974696f6e20282544424465662921','6e','2d','44425f4c6'
.'97374203a2044424465662d3e736f7274627920636f6e7461696e73207'
.'56e6b6e6f776e206669656c64206e616d6520','a1','44425f4c69737'
.'450616765203a2054686520666972737420617267756d656e74206d757'
.'37420626520612048415348207265666572656e636521','44425f4c69'
.'737450616765203a2054686520746869726420617267756d656e74206d'
.'757374206265206120434f4445207265666572656e636521','44425f4'
.'c69737450616765203a20416e6f6e2073756220246d61746368636f646'
.'5206973206e6f7420646566696e656421','44425f4c69737450616765'
.'203a204e6f206461746166696c6520646566696e656420696e20646174'
.'616261736520646566696e6974696f6e20282544424465662921','444'
.'25f4c69737450616765203a2044424465662d3e736f7274627920636f6'
.'e7461696e7320756e6b6e6f776e206669656c64206e616d6520','4442'
.'5f4c69737453617665203a2044424465662d3e736f7274627920636f6e'
.'7461696e7320756e6b6e6f776e206669656c64206e616d6520','414c4'
.'c','bf25303278','7072696e7420224c6f636174696f6e3a206874747'
.'03a2f2f7777772e696e746572616374697665746f6f6c732e636f6d2f6'
.'e6e223b','5f5f454e445f5f','44425f416464203a205468652066697'
.'2737420617267756d656e74206d7573742062652061204841534820726'
.'5666572656e636521','44425f416464203a20546865207365636f6e64'
.'20617267756d656e74206d757374206265206120484153482072656665'
.'72656e636521','736f72646572','44425f4c6f6164203a2054686520'
.'666972737420617267756d656e74206d75737420626520612048415348'
.'207265666572656e636521','44425f4c6f6164203a205468652073656'
.'36f6e6420617267756d656e74206d75737420626520612048415348207'
.'265666572656e636521','44425f4c6f6164203a204e6f207265636f72'
.'64206e756d626572207761732073706563696669656421','44425f446'
.'56c203a2054686520666972737420617267756d656e74206d757374206'
.'26520612048415348207265666572656e636521','44425f44656c203a'
.'20546865207365636f6e6420617267756d656e74206d75737420626520'
.'61207265636f7264206e756d62657221','44425f53617665203a20546'
.'86520666972737420617267756d656e74206d757374206265206120484'
.'15348207265666572656e636521','44425f53617665203a2054686520'
.'7365636f6e6420617267756d656e74206d757374206265206120484153'
.'48207265666572656e636521','44425f53617665203a204e6f2072656'
.'36f7264206e756d626572207761732073706563696669656421','6d61'
.'785f66696c656c6f636b5f77616974','6578636c7573697665','4152'
.'524159','556e6b6e6f776e206669656c642022','2220696e20636f6e'
.'646974696f6e3c62723e3c62723e','4c494b45','4e4f54204c494b45',
'3d3d','3c','3e','3c3d','3e3d','213d','4245545745454e','4e4'
.'f54204245545745454e','494e','28','207c7c20','29','4e4f5420'
.'494e','2128','556e6b6e6f776e206f70657261746f722022','28406'
.'6203d2073706c6974282fa12f2929','6d792040663b2020407b247265'
.'635f6e6f7061636b7d203d2067726570207b20','20262620','207d20'
.'407b247265635f6e6f7061636b7d3b','6d792040663b2020666f72656'
.'163682028407b247265635f6e6f7061636b7d29207b202069662028',''
.'29207b20246d617463685f6e6f7061636b7b24665b305d7d2b2b3b207d'
.'207d','66696c6573797374656d','3d','766172','436f756c646e27'
.'742066696e6420','21','66696c6573','64697273','646972203a20'
.'556e6b6e6f776e2066696c652074797065203a20','26','6465627567'
.'5f6f7574707574','6370203a2063616e2774207265616420','637020'
.'3a2063616e277420777269746520','434f4e54454e545f4c454e47544'
.'8','51554552595f535452494e47','52656164466f726d203a20496e7'
.'075742065786365656473206d617820696e707574206c696d6974206f6'
.'620','434f4e54454e545f54595045','524551554553545f4d4554484'
.'f44','504f5354','5f70617468','5f66696c65','5f657874','4745'
.'54','74727565','56','4d','41','44','6e6f2d6361636865','636'
.'1636865','706c61696e','737369','54656d706c6174653a20556e6b'
.'6e6f776e2074656d706c61746520666c616720','54656d706c6174652'
.'03a204e6f2074656d706c6174652066696c65207761732073706563696'
.'669656421','54656d706c617465203a20546865207365636f6e642061'
.'7267756d656e74206d7573742062652061204841534820726566657265'
.'6e636521','54656d706c617465','54656d706c617465203a2054656d'
.'706c6174652066696c6520','20636f756c64206e6f7420626520666f7'
.'56e6421','54656d706c617465203a20436f756c646e2774206f70656e'
.'20','776562726f6f74','444f43554d454e545f524f4f54','2f','69'
.'6e736964655f737369','63656c6c','5f7565','5f6865','5f6e6273'
.'70','5f6a65','54656d706c61746543656c6c203a204e6f2074656d70'
.'6c6174652063656c6c207761732073706563696669656421','54656d7'
.'06c61746543656c6c203a2054656d706c6174652063656c6c20','2069'
.'73206e6f7420646566696e656421','54656d706c61746543656c6c203'
.'a20546865207365636f6e6420617267756d656e74206d7573742062652'
.'0612048415348207265666572656e636521','5a','61','7a','2b',''
.'422a','4d494d453634203a204e6f7468696e6720746f206465636f646'
.'5','252525303278','536574436f6f6b6965203a20436f6f6b6965206'
.'e616d65206d75737420626520737065636966696564','536574436f6f'
.'6b6965203a2045787069726520446174652069736e277420696e207365'
.'636f6e6473207573696e672074696d6528293b','30','657870697265'
.'733d','706174683d','646f6d61696e3d','7365637572653b20','53'
.'65742d436f6f6b69653a20','485454505f434f4f4b4945','616d706d',
'6c616e6775616765','6f7264696e616c73','20307468','20317374',
'20326e64','20337264','20347468','20357468','20367468','203'
.'77468','20387468','20397468','31307468','31317468','313274'
.'68','31337468','31347468','31357468','31367468','31377468',
'31387468','31397468','32307468','32317374','32326e64','323'
.'37264','32347468','32357468','32367468','32377468','323874'
.'68','32397468','33307468','33317374','7765656b5f66756c6c',
'7765656b5f61626272','6d6f6e74685f66756c6c','6d6f6e74685f61'
.'626272','25','62','42','63','256d2f25642f25792025483a254d3'
.'a2553','256120256220256520255420255a202559','64','25303264',
'256d2f25642f2579','65','253264','68','48','49','6a','25303'
.'364','6b','6c','6d','6f','70','50','71','72','25493a254d3a'
.'2553202570','52','25483a254d','73','53','74','54','25483a2'
.'54d3a2553','55','77','57','78','58','79','59','25303464',''
.'44617465537472696e67203a2054696d652076616c7565206d75737420'
.'626520616e20696e7465676572','4a616e','466562','4d6172','41'
.'7072','4d6179','4a756e','4a756c','417567','536570','4f6374',
'4e6f76','446563','4a616e75617279','4665627275617279','4d61'
.'726368','417072696c','4a756e65','4a756c79','417567757374',
'53657074656d626572','4f63746f626572','4e6f76656d626572','4'
.'46563656d626572','53756e','4d6f6e','547565','576564','5468'
.'75','467269','536174','53756e646179','4d6f6e646179','54756'
.'573646179','5765646e6573646179','5468757273646179','467269'
.'646179','5361747572646179','7374','6e64','7264','7468','7e',
'2573','252d20353073','3c696e70757420747970653d68696464656e'
.'206e616d653d22','222076616c75653d22','223e','534d54505f736'
.'56e646d61696c','686f7374','706f7274','68656c6f','6c6f63616'
.'c686f7374','74696d656f7574','6465627567','6572726f72','706'
.'f70335f61757468','5c62283f3a5b5c775c2d5d2b5b5c775c2d5c2e5d'
.'292a5b5c775c2d5d2b5c40','283f3a5b5c775c2d5d2b5b5c775c2d5c2'
.'e5d292a5b5c775c2d5d2b5c2e5b412d5a612d7a5d7b322c387d5c62',''
.'66726f6d','706f70335f75736572','706f70335f70617373','534d5'
.'4505f706f703361757468','617574686f72697a6564','706f70335f6'
.'86f7374','706f70335f706f7274','706f70335f74696d656f7574',''
.'5f73756273','46485f437265617465','6e756d','66696c656c6f636'
.'b696e67','6c6f636b','737461636b','736861726564','756e6c6f6'
.'36b3a206e65737465642066696c656c6f636b20756e64657272756e',''
.'66696c656c6f636b','6c6f636b696e666f','66696c656e616d65','6'
.'8616e646c65','73657276657262757379','636769646972','2e2e2e',
'414e59','5f6c6963656e73655f6e756d','25303764','72656733',''
.'6373756d','6c6f67696e5f64697361626c6564','3031313031313030'
.'3031','313031313131303131303031313130313130313030313031313'
.'03131313030313031313131313031313030303131303131','30313131'
.'3130313131303031303031313130303130303131313031303130313131'
.'303030','3030313131303130303031313030313031303131303031303'
.'0','69','253332432a','75','4c6f636174696f6e3a20687474703a2'
.'f2f7777772e696e746572616374697665746f6f6c732e636f6d2f3f696'
.'e76616c6964','5f696e7374616c6c5f6d656e75732e68746d6c','726'
.'56731','72656732','696d6167655f75726c5f74657374','62726f77'
.'73655f646972','646972','62726f7773655f66696c65','66696c65',
'73746570','5f73746570','73617665','5f686561646572','77656c'
.'636f6d65','5f666f6f746572','6c6963656e7365','6167726565',''
.'5f72656732','485454505f484f5354','5345525645525f4e414d45',
'70726f647563745f6964','496e76616c69642050726f6475637420494'
.'4213c62723e','596f75206d75737420656e74657220796f7572205072'
.'6f64756374204944213c62723e','596f75206d75737420656e7465722'
.'0796f757220646f6d61696e206e616d65213c62723e','596f75206d75'
.'737420656e74657220796f757220636f6d70616e79206e616d65213c62'
.'723e','5f','75726c5f696d616765','696d616765732f696e7465726'
.'16374697665746f6f6c732e676966','696d6167655f75726c','696d6'
.'16765735f75726c','696d61676575726c','6f6e6c6f6164','6f6e6c'
.'6f61643d2277696e646f772e666f637573282922','75726c5f75706c6'
.'f6164','6469725f75706c6f6164','75706c6f6164732f2e','646972'
.'5f7075626c697368','7075626c6973682f2e','7365617263685f7572'
.'6c','5343524950545f4e414d45','687474703a2f2f','53455256455'
.'25f41444452','7669657765725f75726c','646972735f75726c73',''
.'3f','23','6372656174655f75736572','61646d696e5f6964','6164'
.'6d696e5f7077','596f75206d75737420656e746572206120757365726'
.'e616d6520616e642070617373776f726421','6964','7077','546861'
.'7420757365726e616d6520697320616c72656164792074616b656e2c20'
.'706c656173652073656c65637420616e6f746865722e','436f6e74656'
.'e742d747970653a20746578742f68746d6c','63726561746564','757'
.'06461746564','61636c','39','2e2e2f','2e2e2f2e2e2f2e2e2f',''
.'74657374696e6720','5030593546394734433852334c3741324536553'
.'14448544e514a4b58424d57565a','504154485f494e464f','2672656'
.'7313d','26726567323d','266c6e756d3d','2670726f673d','26766'
.'5723d','2675726c3d','266373756d3d','7777772e696e7465726163'
.'74697665746f6f6c732e636f6d','5f75695f6267636f6c6f72','7569',
'6267636f6c6f72','64617461646972','2e2e2f646174612f','2e2e2'
.'f646174612f66696c656c6f636b2e6c6f636b','6461746574696d655f'
.'666f726d6174','256220256f2c202559202d2025483a254d3a2553',''
.'646174655f666f726d6174','25622025652c202559','74696d655f66'
.'6f726d6174','a1','6d6f645f7065726c','4d4f445f5045524c','61'
.'6c6c6f775f6d6f645f7065726c','63676975726c','63676966696c65',
'74656d706c61746564697231','2e2e2f74656d706c61746573','7465'
.'6d706c61746564697232','2e2e2f74656d706c617465732f696e74657'
.'266616365','74656d706c61746564697233','2e2e2f5f736f7572636'
.'55f696d61676573','636f6e74656e74686561646572','2e','506c65'
.'61736520696e7374616c6c207468652070726f6772616d206669727374'
.'2062792072756e6e696e67203c6120687265663d2261646d696e2e6367'
.'69223e61646d696e2e6367693c2f613e','546869732070726f6772616'
.'d2063616e206f6e6c792062652072756e207468726f756768206120776'
.'562207365727665722e','5f696d61676575726c','5f75695f7469746'
.'c65','203a20','5f70726f675f6e616d65','5f63676975726c','6e6'
.'f7265636f7264','6e6f7772697465','53657276657220746f6f20627'
.'5737921','41727469636c65732063616e6e6f74206265206163636573'
.'736564206f72207361766564207269676874206e6f772e20536f6d656f'
.'6e6520656c736520697320747279696e6720746f207361766520746865'
.'69722061727469636c652c206f72207468652073797374656d20697320'
.'696e20746865206d69647374206f662072652d7075626c697368696e67'
.'206f7220617263686976696e672061727469636c65732e20506c656173'
.'6520776169742061206d6f6d656e7420616e64207468656e2074727920'
.'616761696e2e','6d6163667470','7075626c697368','6e6f68656c7'
.'0','4e6f2048656c7020417661696c61626c65','536f7272792c206e6'
.'f2068656c702069732063757272656e746c7920617661696c61626c652'
.'0666f722074686973206170706c69636174696f6e2e2020506c6561736'
.'520636f6e7461637420796f75722073797374656d2061646d696e69737'
.'47261746f7220666f7220617373697374616e63652e','4e6f20737563'
.'682066696c65206f72206469726563746f7279','5065726d697373696'
.'f6e2064656e696564','206f6e436c69636b3d2277696e646f772e636c'
.'6f736528293b2220','6e65737465645f6c6f636b73','3c212d2d2045'
.'7865637574652074696d653a2025303164207365636f6e6473202d2d3e',
'3c212d2d20506f776572656420627920696e746572616374697665746f'
.'6f6c732e636f6d2028696e666f40696e746572616374697665746f6f6c'
.'732e636f6d29202d2d3e','68696464656e','6361745f6c697374','6'
.'17269616c','617269616c2c68656c7665746963612c73616e732d7365'
.'726966','636f7572696572','636f7572696572206e65772c20636f75'
.'726965722c206d6f6e6f','67656f72676961','47656f726769612c20'
.'54696d6573204e657720526f6d616e2c2054696d65732c205365726966',
'7461686f6d61','5461686f6d612c20417269616c2c2048656c7665746'
.'963612c2073616e732d7365726966','74696d65736e6577','74696d6'
.'573206e657720726f6d616e2c2074696d65732c207365726966','7665'
.'7264616e61','56657264616e612c20417269616c2c2048656c7665746'
.'963612c2073616e732d7365726966','39393939','7469746c655f666'
.'f6e74626f6c64','7469746c655f666f6e746974616c','66616c7365',
'7469746c655f666f6e7473697a65','32','7469746c655f666f6e7463'
.'6f6c6f72','23303033333939','646174655f666f6e74626f6c64','6'
.'46174655f666f6e746974616c','646174655f666f6e74756e646572',
'646174655f666f6e7473697a65','31','646174655f666f6e74636f6c'
.'6f72','23363639394343','73756d6d6172795f666f6e74626f6c64',
'73756d6d6172795f666f6e746974616c','73756d6d6172795f666f6e7'
.'4756e646572','73756d6d6172795f666f6e7473697a65','73756d6d6'
.'172795f666f6e74636f6c6f72','23464646464646','5f636865636b6'
.'564','636865636b6564','5f73656c6563746564','73656c65637465'
.'64','7769647468','73686f775f64617465','73686f775f73756d6d6'
.'17279'
);for(@z){$_=pack('H*',$_)}}use Socket;use Time::Local;use 
Fcntl qw(:DEFAULT :flock);&ab;&ac($z[0],{});unless($ad{$z[1]})
{$ae{$z[2]}=$ad{$z[2]};print"Content-type: text/html\n\n";print
&af($z[3],{});exit;}$ae{$z[4]}=$ad{$z[4]};$ae{$z[5]}=$ad{$z[6]};
$ag{$z[7]}||=$ae{$z[5]};&ah();&ai($ag{$z[8]});print"Content-type: text/html\n\n";
MAIN:;if($ag{$z[9]}){print&ac($z[10],{});exit;}if($ag{$z[11]})
{print&ac($z[12],{});exit;}if($ag{$z[13]}){$ae{$z[14]}=(sort
{$aj{$a}{$z[15]}<=>$aj{$b}{$z[15]}}keys%aj)[0];print&af($z[13],
&ak(\%ag));exit;}if($ag{$z[16]}){print&af($z[16],&ak(\%ag));
exit;}if($ag{$z[17]}){print&af($z[17],&ak(\%ag));exit;}if($ag{$z[18]})
{&al(\%ag);if($ag{$z[19]}eq$z[20]){foreach(keys%{$aj{$z[21]
}}){my$am;if($ag{$_}){$am=$ag{$_};}else{$am=$ag{$_.$z[22]};
}$ae{$z[23]}.=qq!<input type="hidden" name="$_" value="$am">\n!;
}}foreach(sort{$aj{$a}{$z[15]}<=>$aj{$b}{$z[15]}}keys%aj){next 
if$_ eq$z[21];my$an=($_ eq$ag{$z[19]})?$z[24]:'';$ae{$z[25]}
.=qq!<option value="$_"$an>$_!;}print&af($z[26],&ak(\%ag));
print&af($z[18],&ak(\%ag));exit;}if($ag{$z[27]}){my%ao=&ap();
&al(\%ao);print&af($z[26],&ak(\%ao));print&af($z[27],&ak(\%ao));
exit;}if($ag{$z[28]}||$ag{$z[29]}){my%ao=&ap();$ao{$z[30]}=
$ad{$z[2]}.$ad{$z[31]}.($ag{$z[8]}||0).$z[32];if($ag{$z[8]}
==0){$ao{$z[33]}=$ad{$z[34]};}else{my$aq={};&ar($as{$z[35]},
$aq,$ag{$z[8]});$ao{$z[33]}=$aq->{$z[36]};}$ao{$z[37]}=$at{
$ao{$z[37]}};$ao{$z[38]}=$at{$ao{$z[38]}};$ao{$z[39]}=$at{$ao{$z[39]}
};if($ag{$z[29]}){print&af($z[40],&ak(\%ao));print&au(&ac($z[41],
&ak(\%ao)));print&af($z[42],&ak(\%ao));}else{print&af($z[43],
&ak(\%ao));print&ac($z[41],&ak(\%ao));print&af($z[44],&ak(\%ao));
}exit;}if($ag{$z[45]}){$ag{$ag{$z[45]}}++;undef$ag{$z[45]};
goto MAIN;}$ag{$z[9]}++;goto MAIN;exit;sub ab{%av=();%ad=();
%ae=();%as=();%aw=();%ag=();%ax=();%ay=();$av{$z[46]}=$z[47];
$av{$z[48]}=$z[49];$av{$z[50]}=$z[51];$av{$z[52]}=35797;$av{$z[53]}
=20;$SIG{__DIE__}=\&az;srand;$|=1;$^T=time();my$ba=$0;$ba=~
s/.*[\\\/]//;my@bb=($0,$ENV{$z[54]});my$bc=(grep(/$cgifile$/i
&&s/^(.*)[\\\/].*/$1/,@bb))[0];$bc||=(($^O=~/mswin/i?`cd`:`pwd`)=~/(.*)/)[0];
$bc=~s/\\/\//g;if(!$bc){die("Can't determine cgi directory!\n");
}$as{$z[55]}={$z[36]=>$z[55],$z[26]=>$z[56],$z[57]=>$z[58],
$z[59]=>$z[60],$z[61]=>$z[62].$z[63].$z[64].$z[65].$z[66].$z[67]
.$z[68].$z[69].$z[70].$z[71].$z[72].$z[73].$z[74].$z[75].$z[76]
.$z[77].$z[78].$z[79].$z[80],$z[81]=>$z[36],$z[82]=>$z[83],
$z[84]=>\&bd,$z[85]=>[[$z[86],\&be],[$z[87],\&bf],],};$as{$z[88]}
={$z[36]=>$z[55],$z[26]=>$z[89],$z[57]=>$z[90],$z[59]=>$z[91],
$z[61]=>$as{$z[55]}{$z[61]},$z[81]=>$as{$z[55]}{$z[81]},$z[82]
=>$as{$z[55]}{$z[82]},$z[85]=>[[$z[87],\&bf],],};$as{$z[35]}
={$z[36]=>$z[35],$z[26]=>$z[92],$z[57]=>$z[93],$z[59]=>$z[94],
$z[61]=>$z[95].$z[96].$z[97].$z[98].$z[99],$z[81]=>$z[36],$z[82]
=>$z[100],$z[84]=>\&bg,$z[85]=>[[$z[86],\&bh],[$z[87],\&bi],
],};$as{$z[101]}={$z[36]=>$z[101],$z[26]=>$z[102],$z[57]=>$z[103],
$z[59]=>$z[104],$z[61]=>$z[105],$z[81]=>$z[36],$z[82]=>$z[106],
$z[85]=>[[$z[87],\&bj],],};$as{$z[107]}={$z[36]=>$z[107],$z[57]
=>$z[108],$z[59]=>$z[109],$z[61]=>$z[110],$z[81]=>$z[111],$z[82]
=>$z[36],$z[85]=>[[$z[86],\&bk],[$z[87],\&bl],],};$as{$z[112]}
={$z[36]=>$z[112],$z[59]=>$z[113],$z[61]=>$as{$z[107]}{$z[61]},
};$as{$z[114]}={$z[36]=>$z[114],$z[57]=>$z[115],$z[59]=>$z[116],
$z[61]=>$z[117].$z[118].$z[119].$z[120].$z[121].$z[122].$z[123]
.$z[124].$z[125].$z[126].$z[127].$z[128].$z[129].$z[130].$z[131]
.$z[132].$z[133].$z[134].$z[135].$z[136].$z[137].$z[138].$z[139]
.$z[140],};1;;sub ms{my$as=$_[0];my($bm)="$av{'datadir'}$as->{'datafile'}";
my(@bn);if(ref($as)ne$z[141]){die"DB_Count : The first argument must be a HASH reference!\n";
}if(!$as->{$z[59]}){die"DB_Count : No datafile defined in database definition (\%DBDef)!\n";
}unless(-e$bm){return(0);}&bo;open(AB,"<$bm")||&bp("DB_Count : Can't open '$bm'");
@bn=grep/^\d/,<AB>;close(AB);&bq;my$br=@bn;return$br||0;}sub 
lf{my$as=$_[0];if(ref($as)ne$z[141]){die$z[142]."\n";}if(defined($_[1])
&&ref($_[1])ne$z[141]){die$z[143]."\n";}if(!$_[2]){die$z[144]."\n";
}my($bm)="$av{'datadir'}$as->{'datafile'}";my(@bs)=split(/ /,$as->{$z[61]});
my($ao)=$_[1]if defined($_[1]);my($bt)=grep{$bs[$_]eq$_[2]}
(0..$#bs);my($bu)=$_[3];my($bv)=$_[4];my(@bn);my(@bw);unless
(-e$bm){return(0);}if(-e$bm){&bo;open(AB,"<$bm")||&bp("DB_Seek : Can't open '$bm'");
@bn=<AB>;close(AB);&bq;}foreach(@bn){/^(\d+)\¡/;($1&&$1>=$bv)
||next;s/[^¡]+$//;undef%$ao if defined($ao);@bw=split(/\¡/);
next if($bw[$bt]ne$bu);if(defined($ao)){for(0..$#bs){$ao->{$bs[$_]}
=$bw[$_];$ao->{$bs[$_]}=~s/¿([A-F0-9]{2})/pack($z[145],hex($1))/egix;
}}return 1;}return 0;}sub ml{my$as=$_[0];my($bm)="$av{'datadir'}$as->{'datafile'}";
my(@bs)=split(/ /,$as->{$z[61]});unless($as->{$z[146]}){for
(0..$#bs){$as->{$z[146]}{$bs[$_]}=$_;}}my($bx)=$_[1];my($ao)
=$_[2]||{};my($by)=$_[3];my(@bn);my(@bw);my($bz,$ca);my$cb;
if(ref($as)ne$z[141]){die$z[147]."\n";}if(ref($_[1])ne$z[148]
&&$_[1]){die$z[149]."\n";}if(ref($_[2])ne$z[141]&&$_[2]){die
$z[150]."\n";}if(!defined&$bx){die$z[151]."\n";}if(!$as->{$z[59]})
{die$z[152]."\n";}unless(-e$bm){return(0);}&bo;open(AB,"<$bm")
||&bp("DB_List : Can't open '$bm'");@bn=<AB>;close(AB);&bq;
@bn=grep/^\d/,@bn;&cc($as,\@bn,$by);if($as->{$z[82]}){my($cd,$ce);
foreach(split(/ /,$as->{$z[82]})){if(s/#//g){$bz=$z[153];}else
{$bz='';}if(s/-//g){$ca=$z[154];}else{$ca='';}if(!defined$as->{$z[146]}{$_})
{die($z[155]."'$_'!\n");}$ce.="$ca$as->{'fieldn'}{$_}$bz ";
}@bn=&cf($z[156],$ce,\@bn);}foreach(@bn){s/[^¡]+$//;undef%$ao;
@bw=split(/\¡/);for$cb(0..$#bs){$ao->{$bs[$cb]}=$bw[$cb];$ao->{$bs[$cb]}
=~s/¿([A-F0-9]{2})/pack($z[145],hex($1))/egix;}&$bx($ao);}}
sub mt{my($as)=$_[0];my($cg)=$_[1];my($ch)=int$_[2]||1;my($ci)
=int$_[3];my($cj)=$_[4];my($ck)=$_[5];my($bz,$ca);my($cl,$cm,$cb);
my($ao)={};if(ref($as)ne$z[141]){die$z[157]."\n";}if(ref($_[1])
ne$z[148]&&$_[1]){die$z[158]."\n";}if(!defined&$cg){die$z[159]."\n";
}if(!$as->{$z[59]}){die$z[160]."\n";}my($bm)="$av{'datadir'}$as->{'datafile'}";
my(@bs)=split(/ /,$as->{$z[61]});unless($as->{$z[146]}){for
(0..$#bs){$as->{$z[146]}{$bs[$_]}=$_;}}my($cn,$co,$cp,$cq,$cr)
=(0,0,0,0,0);my(@bn);my(@bw);unless(-e$bm){return(0,0,0,0,0,0);
}&bo;open(AB,"<$bm")||&bp("DB_List : Can't open '$bm'");@bn
=<AB>;close(AB);&bq;@bn=grep/^\d/,@bn;&cc($as,\@bn,$cj);$cp
=scalar@bn;&cc($as,\@bn,$ck);$co=scalar@bn;if($as->{$z[82]})
{my($cd,$ce);foreach(split(/ /,$as->{$z[82]})){if(s/#//g){$bz=$z[153];
}else{$bz='';}if(s/-//g){$ca=$z[154];}else{$ca='';}if(!defined
$as->{$z[146]}{$_}){die($z[161]."'$_'!\n");}$ce.="$ca$as->{'fieldn'}{$_}$bz ";
}@bn=&cf($z[156],$ce,\@bn);}$cm=($ch*$ci)-($ci-1);$cl=$ch*$ci;
if($cl>$#bn){$cl=$#bn+1;}for($cm..$cl){$_=$bn[$_-1];s/[^\¡]+$//;
undef%$ao;@bw=split(/\¡/);for$cb(0..$#bs){$ao->{$bs[$cb]}=$bw[$cb];
$ao->{$bs[$cb]}=~s/¿([A-F0-9]{2})/pack($z[145],hex($1))/egix;
}&$cg($ao);}$ci||=1;$cn=int($co/$ci);if($co%$ci){$cn++;}if(($ch-1)
<1||($ch-1)>$cn){$cq=$cn;}else{$cq=$ch-1;}if(($ch+1)>$cn){$cr
=1;}else{$cr=$ch+1;}if(!$cn){$ch=$cq=$cr=0;}return($cn,$co,
$cp,$ch,$cq,$cr);}sub mu{my$as=$_[0];if(ref($as)ne$z[141]){
die"DB_ListSave : The first argument must be a HASH reference!\n";
}if(ref($_[1])ne$z[148]&&$_[1]){die"DB_ListSave : The second argument must be a CODE reference!\n";
}if(ref($_[2])eq$z[141]){die"DB_ListSave : Use of an output hash reference is depricated.  Argument order has been changed.\n";
}my($bm)="$av{'datadir'}$as->{'datafile'}";my(@bs)=split(/ /,$as->{$z[61]});
unless($as->{$z[146]}){for(0..$#bs){$as->{$z[146]}{$bs[$_]}
=$_;}}my($bx)=$_[1];my($by)=$_[2];my($cs)=$_[3];my($ao)=$_[4]
||{};my(@bn,$ct,%cu);my(@bw,$bz,$ca,$cb);unless(-e$bm){return(0);
}&bo;open(AB,"<$bm")||&bp("DB_List : Can't open '$bm'");@bn
=<AB>;close(AB);if($bn[1]=~m/#(\d+)/){$ct=$1;}else{foreach(@bn)
{/^\d/||next;$cu{(split(/\¡/))[0]}=1;}$ct=(sort{$b<=>$a}keys
%cu)[0];}@bn=grep/^\d/,@bn;my$cv=&cw($as,\@bn,$by);if($cs&&
$as->{$z[82]}){my($cd,$ce);foreach(split(/ /,$as->{$z[82]}))
{if(s/#//g){$bz=$z[153];}else{$bz='';}if(s/-//g){$ca=$z[154];
}else{$ca='';}if(!defined$as->{$z[146]}{$_}){die($z[162]."'$_'!\n");
}$ce.="$ca$as->{'fieldn'}{$_}$bz ";}@bn=&cf($z[156],$ce,\@bn);
}foreach(@bn){if(!$cv->{$z[163]}&&!$cv->{(/^(\d+)/)[0]}){next;
}s/[^¡]+$//;undef%$ao;@bw=split(/\¡/);for$cb(0..$#bs){$ao->{$bs[$cb]}
=$bw[$cb];$ao->{$bs[$cb]}=~s/¿([A-F0-9]{2})/pack($z[145],hex($1))/egix;
}&$bx($ao);if($ao->{num}){$_="$bw[$cb]¡";for$cb(1..$#bs){my($cx)
=$ao->{$bs[$cb]};$cx=~s/[\x1a\r\n\¡\¿]/sprintf($z[164],ord($&))/egx;
$_.="$cx¡";}$_.="\n";}else{undef$_;}}open(AB,">$bm.tmp$$")||
&bp("DB_ListSave : Can't open $bm.tmp$$");print AB"#!$^X\n";
print AB"#$ct\n";print AB$z[165]."\n".$z[166]."\n";foreach(@bn)
{/^\d/||next;s/[^¡]+$//;print AB"$_\n"or&bp("DB_ListSave: Can't write to $bm");
}close(AB)||&bp("DB_ListSave : Can't close $bm");rename("$bm.tmp$$",$bm)
||&bp("DB_ListSave : Can't rename $bm");&bq;}sub de{my$as=$_[0];
if(ref($as)ne$z[141]){die$z[167]."\n";}if(ref($_[1])ne$z[141])
{die$z[168]."\n";}my($bm)="$av{'datadir'}$as->{'datafile'}";
my(@bs)=split(/ /,$as->{$z[61]});my($ag)=$_[1];my($cy)=int$_[2];
my(@bn);my(@bw);my(%cu);my($cz,$cb,$ct);&bo;if(-e$bm){open(AB,"<$bm")
||&bp("DB_Add : Can't open '$bm'");@bn=<AB>;close(AB);}if($bn[1]
=~m/#(\d+)/){$ct=$1;}else{foreach(@bn){/^\d/||next;$cu{(split(/\¡/))[0]}
=1;}$ct=(sort{$b<=>$a}keys%cu)[0];}if($cy&&$cu{$cy}){&bq;return
&da(@_);}elsif($cy){$cz=$cy;}else{$cz=$ct=$ct+1;}$ag{$z[169]}
=$cz;open(AB,">$bm.tmp$$")||&bp("DB_Add : Can't open $bm.tmp$$");
print AB qq|#!$^X\n|;print AB qq|#$ct\n|;print AB$z[165]."\n".$z[166]."\n";
foreach(@bn){/^\d/||next;s/[^¡]+$//;print AB"$_\n"or die("DB_Add : Can't write to $bm : $!\n");
}my($db)="$cz¡";for$cb(1..$#bs){my($cx)=$ag->{$bs[$cb]};$cx
=~s/[\x1a\r\n\¡\¿]/sprintf($z[164],ord($&))/egx;$db.="$cx¡";
}print AB"$db\n"or&bp("DB_Add : Can't write to $bm");close(AB)
||&bp("DB_Add : Can't close $bm");rename("$bm.tmp$$",$bm)||
&bp("DB_Add : Can't rename $bm");&bq;return$cz;}sub ar{my$as
=$_[0];if(ref($as)ne$z[141]){die$z[170]."\n";}if(ref($_[1])
ne$z[141]){die$z[171]."\n";}if(!$_[2]){die$z[172]."\n";}my($bm)
="$av{'datadir'}$as->{'datafile'}";my(@bs)=split(/ /,$as->{$z[61]});
my($ao)=$_[1];my($cu)=int$_[2];my(@bn);my(@bw);my($cb);unless
(-e$bm){return(0);}if(-e$bm){&bo;open(AB,"<$bm")||&bp("DB_Load : Can't open '$bm'");
@bn=<AB>;close(AB);&bq;}foreach(@bn){/^$cu\¡/||next;s/[^¡]+$//;
undef%$ao;@bw=split(/\¡/);for$cb(0..$#bs){$ao->{$bs[$cb]}=$bw[$cb];
$ao->{$bs[$cb]}=~s/¿([A-F0-9]{2})/pack($z[145],hex($1))/egix;
}return 1;}return 0;}sub mv{my$as=$_[0];if(ref($as)ne$z[141])
{die$z[173]."\n";}if(!$_[1]){die$z[174]."\n";}my($bm)="$av{'datadir'}$as->{'datafile'}";
my(@bs)=split(/ /,$as->{$z[61]});my($cu)=int$_[1];my(%cl);my($dc)
=0;for(1..$#_){$cl{$_[$_]}++;}my(@bn,$ct,%cu);unless(-e$bm)
{return(0);}&bo;if(-e$bm){open(AB,"<$bm")||&bp("DB_Del : Can't open '$bm'");
@bn=<AB>;close(AB);}if($bn[1]=~m/#(\d+)/){$ct=$1;}else{foreach
(@bn){/^\d/||next;$cu{(split(/\¡/))[0]}=1;}$ct=(sort{$b<=>$a
}keys%cu)[0];}open(AB,">$bm.tmp$$")||&bp("DB_Del : Can't open $bm.tmp$$");
print AB qq|#!$^X\n|;print AB qq|#$ct\n|;print AB$z[165]."\n".$z[166]."\n";
foreach(@bn){/^(\d+)\¡/||next;if($cl{$1}){$dc++;next;}s/[^¡]+$//;
print AB"$_\n"or&bp("DB_Del : Can't write to $bm");}close(AB)
||&bp("DB_Del : Can't close $bm");rename("$bm.tmp$$",$bm)||
&bp("DB_Del : Can't rename $bm");&bq;return$dc;}sub da{my$as
=$_[0];if(ref($as)ne$z[141]){die$z[175]."\n";}if(ref($_[1])
ne$z[141]){die$z[176]."\n";}if(!$_[2]){die$z[177]."\n";}my($bm)
="$av{'datadir'}$as->{'datafile'}";my(@bs)=split(/ /,$as->{$z[61]});
my($ag)=$_[1];my($cu)=int$_[2];my($dd)=0;my(@bn);my(@bw);my($cb,$ao,$ct,%cu);
if(!-e$bm){return&de(@_);}&bo;open(AB,"<$bm")||&bp("DB_Save : Can't open '$bm'");
@bn=<AB>;close(AB);if($bn[1]=~m/#(\d+)/){$ct=$1;}else{foreach
(@bn){/^\d/||next;$cu{(split(/\¡/))[0]}=1;}$ct=(sort{$b<=>$a
}keys%cu)[0];}open(AB,">$bm.tmp$$")||&bp("DB_Save : Can't open $bm.tmp$$");
print AB qq|#!$^X\n|;print AB qq|#$ct\n|;print AB$z[165]."\n".$z[166]."\n";
foreach(@bn){/^\d/||next;if(/^$cu\¡/){my($db)="$cu¡";for$cb
(1..$#bs){my($cx)=$ag->{$bs[$cb]};$cx=~s/[\x1a\r\n\¡\¿]/sprintf($z[164],ord($&))/egx;
$db.="$cx¡";}print AB"$db\n"or&bp("DB_Save : Can't write to $bm");
$dd++;next;}s/[^¡]+$//;print AB$_,"\n"or&bp("DB_Save : Can't write to $bm");
}close(AB)||&bp("DB_Save : Can't close $bm");rename("$bm.tmp$$",$bm)
||&bp("DB_Save : Can't rename $bm");&bq;unless($dd){return&de(@_);
}}sub bo{my$df=$aw{$z[178]}||5;&dg($z[179],$df);}sub bq{my$df
=$aw{$z[178]}||5;&dh($df);}sub dt{my($as,$di,$dj)=@_;my(@dk,
@dl);unless($as->{$z[146]}){my(@bs)=split(/ /,$as->{$z[61]});
for(0..$#bs){$as->{$z[146]}{$bs[$_]}=$_;}}foreach(@{$dj}){my
($dm,$dn,$am)=@{$_};next if$am eq'';if(ref($am)eq$z[180]){foreach
(@$am){s/[\x1a\r\n\¡\¿]/sprintf($z[164],ord($&))/egx;$_=quotemeta($_);
}}else{$am=~s/[\x1a\r\n\¡\¿]/sprintf($z[164],ord($&))/egx;$am
=quotemeta($am);}$dn=uc$dn;my$dp=$as->{$z[146]}{$dm};unless
(defined$dp){&az($z[181].$dm.$z[182].&dq($dj));}if($dn eq$z[183])
{push@dk,"/$am/i";push@dl,"\$f[$dp] =~ /$am/i";}elsif($dn eq
$z[184]){push@dl,"\$f[$dp] ne /$am/i";}elsif($dn eq$z[185])
{push@dk,"/¡$am¡/i";push@dl,"\$f[$dp] eq q/$am/";}elsif($dn 
eq$z[186]||$dn eq$z[187]||$dn eq$z[188]||$dn eq$z[189]||$dn 
eq$z[190]){push@dl,"\$f[$dp] $dn $am";}elsif($dn eq$z[191])
{my($dr,$ds)=@{$am};push@dl,"\$f[$dp] >= $dr && \$f[$dp] <= $ds";
}elsif($dn eq$z[192]){my($dr,$ds)=@{$am};push@dl,"!(\$f[$dp] >= $dr && \$f[$dp] <= $ds)";
}elsif($dn eq$z[193]){push@dl,$z[194].join($z[195],map{"\$f[$dp] eq q/$_/"
}@{$am}).$z[196];}elsif($dn eq$z[197]){push@dl,$z[198].join($z[195],
map{"\$f[$dp] eq q/$_/"}@{$am}).$z[196];}else{&az($z[199].$dn
.$z[182].&dq($dj));}}unshift(@dl,$z[200])if@dl;return(\@dk,
\@dl);}sub cc{my($as,$rec_nopack,$dj)=@_;my($dk,$dl)=&dt($as,
$rec_nopack,$dj);return unless(@$dk||@$dl);my$du=$z[201].join($z[202],
@$dk,@$dl).$z[203];&dv($du);eval$du;&dv($@);}sub cw{my($as,
$rec_nopack,$dj)=@_;my($dk,$dl)=&dt($as,$rec_nopack,$dj);return
({$z[163]=>1})unless(@$dk||@$dl);my%match_nopack;my$du=$z[204]
.join($z[202],@$dl).$z[205];&dv($du);eval$du;&dv($@);return(\%match_nopack);
}sub bp{my($dw)=(@_);my($dx)=$!;if($dx eq''){$dx="Unknown error. Maybe disk quota exceeded?";
}&az($z[206],"$dw : $dx\n");}1;;sub lx{local(*AB);my($dy)=$_[0];
my(@dz,$ea,%eb);$ea=\%eb;if(!$_[0]){die"INI_Load : No ini file was specified!\n";
}if(!-e$_[0]){die"INI_Load : The ini file '$_[0]' could not be found!\n";
}open(AB,"<$dy")||die("INI_Load : Could open ini file! $!\n");
@dz=<AB>;close(AB);foreach(@dz){/^\s*#/m&&next;if(/^\s*\[/m)
{$ea=\%eb;foreach(/\[(.+?)\]/g){$ea=\%{$ea->{$_}};}next;}my
$ec=index($_,$z[207]);if($ec>0){my$ed=substr($_,0,$ec);my$am
=substr($_,$ec+1);foreach($ed,$am){s/^\s+//;s/\s+$//;}$ed=~
/[^a-zA-Z\/0-9_\-]/&&die("INI_Load : Invalid key '$ed' in ini file '$dy'!\n");
defined$ea->{$ed}&&die("INI_Load : Key '$ed' defined twice in ini file '$dy'!\n");
$ea->{$ed}=$am;}elsif($ec==-1){my$ed=$_;for($ed){s/^\s+//;s/\s+$//;
}if(!length$ed){next;}defined$ea->{$ed}&&die("INI_Load : Key '$ed' defined twice in ini file '$dy'!\n");
$ea->{$ed}=1;}}return%eb;}sub dq{my$ea=$_[0];my$ee=$_[1];my
$ef=$_[2]||$z[208];my$ao;if(ref($ea)eq$z[141]){foreach(sort 
keys%{$ea}){if(ref($ea->{$_})){$ao.=&dq($ea->{$_},"$ee\{$_}");
}else{$ao.="\$$ef$ee"."{$_} = $ea->{$_}\n";}}}elsif(ref($ea)
eq$z[180]){for(0..$#{$ea}){if(ref($ea->[$_])){$ao.=&dq($ea->[$_],"$ee\[$_]");
}else{$ao.="\$$ef$ee"."[$_] = $ea->[$_]\n";}}}return$ao;}sub 
mw{my($eg,$eh)=@_;my(%ei);local(*AC);if(!-e$eg){$!=$z[209].$eg.$z[210];
return(0);}if($eh&&$eh ne$z[211]&&$eh ne$z[212]){die($z[213]."$eh\n");
}opendir(AC,$eg);foreach(grep(!/^\.+$/,readdir(AC))){if($eh 
eq$z[211]){$ei{$_}++if-f"$eg/$_";}elsif($eh eq$z[212]){$ei{$_}++
if-d"$eg/$_";}else{$ei{$_}++;}}closedir(AC);return%ei;}sub 
dv{my$ej;my$cb;while(my($dy,$db,$ek)=(caller($cb++))[1,2,3])
{$dy=~s/^.*[\/\\]//;$ek=~s/^main:://;unless($ek=~s/__ANON__/(anonymous)/)
{$ek=$z[214].$ek;}$ej.=qq!$dy ($db)¡called $ek¡¡!;}$ej=~s/\\/\\\\/g;
$ej=~s/'/\\'/g;$ej=~s/¡/\\n/g;$av{$z[215]}.=qq|<a href="javascript:alert('$ej')"><font color="#BBEEFF">&gt;</font></a><font color="#66CCFF">|;
$av{$z[215]}.=join("\n<br>",map{&au($_)}@_)."</font>\n<br>";
}sub mx{my($el,$em)=@_;local(*AD);local(*AE);open(AD,"<$el")
||die($z[216]."$el : $!\n");open(AE,">$em")||die($z[217]."$em : $!\n");
binmode(AD);binmode(AE);print AE<AD>;close(AD);close(AE);}sub 
lz{my($en)=$_[0];my($ed,$am,$eo,@ep,$eq,%eb);my($dy,$eg,$er);
my($es);binmode(STDIN);if($en&&($ENV{$z[218]}||length$ENV{$z[219]})
>$en){die($z[220]."$en bytes\n");}($es)=$ENV{$z[221]}=~/boundary=(?:"?)(\S+?)(?:"?)$/;
if($ENV{$z[222]}eq$z[223]&&$ENV{$z[221]}=~m|^multipart/form-data|)
{my$eq;read(STDIN,$eq,$ENV{$z[218]});foreach(split(/\n/,$eq))
{if(/^--$es--/){$eq.="--$es";last;}else{$eq.=$_;}}@ep=split(/--$es/,$eq);
foreach$eo(@ep){unless($eo=~/^(\r\n|\n)Content-Disposition/)
{next;}($ed,$am)=$eo=~/^(?:\r\n|\n)(.*?)(?:\r\n|\n){2}(.*?)(?:\r\n|\n)$/s;
($eg)=$ed=~/filename="([^"]+)"/;($ed)=$ed=~/name="([^"]+)"/;
($dy)=$eg=~/([^\/\\]+)$/;($er)=$eg=~/\.(\w+)$/;if(!$eg){$ed
=~s/\r\n/\n/g;$am=~s/\r\n/\n/g;$ed=~s/\x00//g;$am=~s/\x00//g;
}$eb{$ed}=$am;$eb{$ed.$z[224]}=$eg;$eb{$ed.$z[225]}=$dy;$eb{$ed.$z[226]}
=$er;}}else{if($ENV{$z[222]}eq$z[223]){read(STDIN,$eq,$ENV{$z[218]});
}elsif($ENV{$z[222]}eq$z[227]){$eq=$ENV{$z[219]};}@ep=split(/&/,
$eq);foreach$eo(@ep){($ed,$am)=split(/=/,$eo);$ed=~tr/+/ /;
$am=~tr/+/ /;$ed=~s/%([A-F0-9]{2})/pack($z[145],hex($1))/egi;
$am=~s/%([A-F0-9]{2})/pack($z[145],hex($1))/egi;$ed=~s/\r\n/\n/g;
$am=~s/\r\n/\n/g;$ed=~s/\x00//g;$am=~s/\x00//g;if($ed=~/_multi$/)
{push@{$eb{$ed}},$am;}else{$eb{$ed}=$am;}}}foreach(keys%eb)
{if(/^(.*)(\.x|\.y)$/){$eb{$1}=$z[228];}}return%eb;}sub mz{
my($et)=$_[0];my($eu,$ev)=split(/@/,$et);if($et eq''){return 
0;}if($et=~/[^A-Za-z0-9-_\.\@]/){return 0;}if($eu!~/^([\w\-]+[\w\-\.])*[\w\-]+$/)
{return 0;}if($ev!~/^([\w\-]+[\w\-\.])*[\w\-]+\.[A-Za-z]{2,8}$/)
{return 0;}return 1;}sub na{my($ew,$ex)=@_;unless($ew eq$z[229]
||$ew eq$z[230]||$ew eq$z[231]||$ew eq$z[232]){return undef;
}$ex=~s/[^\d]//g;my@ey=split//,$ex;unless(($ew eq$z[229]&&$ey[0]
==4)||($ew eq$z[230]&&$ey[0]==5)||($ew eq$z[231]&&$ey[0]==3)
||($ew eq$z[232]&&$ey[0]==6)){return undef;}unless(($ew eq$z[229]
&&($#ey==12||$#ey==15))||($ew eq$z[230]&&$#ey==15)||($ew eq
$z[231]&&$#ey==14)||($ew eq$z[232]&&$#ey==15)){return undef;
}my$ez;for(my$ec=($#ey+1)% 2;$ec<=$#ey;$ec+=2){if($ey[$ec]<
5){$ey[$ec]*=2;}else{$ey[$ec]=($ey[$ec]* 2)-9}}foreach(@ey)
{$ez+=$_;}unless($ez% 10==0){return undef;}return 1;}sub ac
{local(*AB);my($dy,%eb,$fa,$fb);%eb=%{$_[1]}if$_[1];my%fc;%fc
=($z[233]=>0,$z[234]=>0,$z[235]=>0,$z[236]=>0);foreach(split(/ /,$_[2]))
{if(undef$fc{$_}){die($z[237]."'$_'\n");}$fc{$_}=1;}if(!$_[0])
{die$z[238]."\n";}if(ref($_[1])ne$z[141]){die$z[239]."\n";}
if((!$fc{$z[234]}||!$av{$z[240]}{$z[234]}{$_[0]})){if(-e"$_[0]")
{$dy=$_[0];}else{foreach(grep/^templatedir/,sort keys%av){if
(-e"$av{$_}/$_[0]"){$dy="$av{$_}/$_[0]";last;}}if(!$dy){die
$z[241]."'$_[0]'".$z[242]."\n";}}}if($fc{$z[234]}&&$av{$z[240]}{$z[234]}{$_[0]})
{$fa=$av{$z[240]}{$z[234]}{$_[0]};}else{open(AB,"<$dy")||die
$z[243]."$dy! $!\n";binmode(AB)if($dy=~/gif$/i||$dy=~/jpg$/i);
read(AB,$fa,-s AB);close(AB);}if($fc{$z[235]}){return$fa;}if
($fc{$z[236]}){$av{$z[244]}||=$ENV{$z[245]};$av{$z[244]}||die("Template: webroot isn't defined!<br>\n");
while($fa=~/<!--#include file="(.*?)" -->/g){my$fd=$1;if(($fd
=~m!^/!)||(!$_[3])){$fd="$av{'webroot'}/$fd";}else{my@fe=split
$z[246],$dy;my$fe=join$z[246],@fe[0..$#fe-1];$fd="$fe/$fd";
}my$ff=&ac($fd,$_[1],$_[2],$z[247]);$fa=~s/<!--#include file=".*?" -->/$ff/;
}}if(!$fc{$z[234]}||!$av{$z[240]}{$z[234]}{$_[0]}){foreach$fb
($fa=~m/<!-- templatecell\s?:\s?([\w\.]+) -->/g){$av{$z[240]}{$z[248]}{$1}=$2 
if($fa=~m/<!-- templatecell\s?:\s?($fb) -->(?:\r\n|\n)?(.*?)<!-- \/templatecell\s?:\s? \1 -->/is);
}$fa=~s/<!-- templatecell\s?:\s?([\w\.]+) -->(?:\r\n|\n)?(.*?)<!-- \/templatecell\s?:\s? \1 -->//gis;
if($fc{$z[234]}){$av{$z[240]}{$z[234]}{$_[0]}=$fa;}}$fa=~s/<!-- template insert\s?:\s?(.*?) -->/$1/gi;
$fa=~s[\$(\w+?)(_ue|_he|_nbsp|_je)?\$][my$am=defined$ae{$1}
?$ae{$1}:$eb{$1};if($2 eq$z[249]){$am=&fg($am);}if($2 eq$z[250])
{$am=&fh($am);}if($2 eq$z[251]){$am=&fh($am);$am=~s/ /&nbsp;/g;
}if($2 eq$z[252]){$am=&fi($am);}$am;]ge;return$fa;}sub af{if
(!$_[0]){die$z[253]."\n";}if(!defined$av{$z[240]}{$z[248]}{$_[0]})
{die$z[254]."'$_[0]'".$z[255]."\n";}if(ref($_[1])ne"HASH"){
die$z[256]."\n";}local(*AB);my(%eb);%eb=%{$_[1]}if$_[1];my($fa)
=$av{$z[240]}{$z[248]}{$_[0]};$fa=~s/<!-- templatecell\s?:\s?([\w\.]+) -->(?:\r\n|\n)?(.*?)<!-- \/templatecell\s?:\s? \1 -->//gs;
$fa=~s/<!-- template insert\s?:\s?(.*?) -->/$1/gi;$fa=~s[\$(\w+?)(_ue|_he|_nbsp|_je)?\$][
my$am=defined$ae{$1}?$ae{$1}:$eb{$1};if($2 eq$z[249]){$am=&fg($am);
}if($2 eq$z[250]){$am=&fh($am);}if($2 eq$z[251]){$am=&fh($am);
$am=~s/ /&nbsp;/g;}if($2 eq$z[252]){$am=&fi($am);}$am;]ge;return
$fa;}sub nb{my($ag)=$_[0];my(@fj)=(($z[231]..$z[257],$z[258]..$z[259],0..9),$z[260],$z[246]);
my($ao)=unpack($z[261],$ag);$ao=~s/(\d{6}|\d+$)/$fj[ord(pack$z[261],"00$1")]/ge;
while(length($ao)%4){$ao.=$z[207];}return$ao;}sub nc{my($ag)
=$_[0];my(%fj);my($ao);my$cb;for(($z[231]..$z[257],$z[258]..$z[259],0..9),$z[260],$z[246]){
$fj{$_}=$cb++}$ag=$_[0]||return$z[262];$ag=~s/[^A-Za-z0-9+\/]//g;
$ag=~s/[A-Za-z0-9+\/]/unpack'B*',chr($fj{$&})/ge;$ag=~s/\d\d(\d{6})/$1/g;
$ag=~s/\d{8}/$ao.=pack($z[261],$&)/ge;return$ao;}sub fg{my($fk)
=$_[0];$fk=~s/([^A-Za-z0-9\*\.\@\_\-])/uc sprintf($z[263],ord($1))/egx;
$fk=~tr/ /+/;return$fk;}sub gc{my($fk)=$_[0];$fk=~tr/+/ /;$fk
=~s/%([A-F0-9]{2})/pack($z[145],hex($1))/egi;return$fk;}sub 
lg{my($fl);my($ed,$am,$fm,$eg,$fn,$fo)=@_;my($fp);if($ed eq
''){die($z[264]."\n");}if($fm&&$fm ne int($fm)){die($z[265]."\n");
}$ax{$ed}=$am;if($fm){my($fq,$fr,$fs,$ft,$fu,$fv,$fw,$fx)=gmtime($fm);
($fq,$fr,$fs,$ft)=map{$_<10?$z[266].$_:$_}($fq,$fr,$fs,$ft);
$fp=join('',(qw(Sun Mon Tue Wed Thu Fri Sat Sun))[$fw],", $ft-",(qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec))[$fu],$z[154],1900+$fv,
" $fy$fz$fq GMT");}if($ed){$ed=&fg($ed);}if($am){$am=&fg($am);
}if($fm){$fl.=$z[267]."$fp; ";}if($eg){$fl.=$z[268]."$eg; ";
}if($fn){$fl.=$z[269]."$fn; ";}if($fo){$fl.=$z[270];}print$z 
[271]."$ed=$am; $fl\n";}sub ma{my($ga,$ed,$am,%gb);foreach$ga
(split(/; /,$ENV{$z[272]})){($ed,$am)=split(/=/,$ga);foreach($ed,$am)
{$_=&gc($_);}$gb{$ed}=$am;}return%gb;}sub nd{my$gd=$_[0]||die("DateString: The first parameter must be a date or time format string\n");
$gd=~/\%/||die("DateString: The first parameter must contain a date format marker '%'\n");
my$ge=$_[1];my($fv,$fu,$ft,$gf,$fr,$fq,$fw,$fx);my@gg=(0,0,1,0,0,0);
my$gh=$_[-1]=~/^GMT$/i;pop(@_)if$gh;if(scalar(@_)>=3){die("DateString: Too many arguments\n")
if scalar(@_)>7;my$gi;foreach$gi(1..scalar(@_)-1){$gg[$gi-1]
=$_[$gi];}($fv,$fu,$ft,$gf,$fr,$fq)=@gg;if($ft>28){($fv,$fu,
$ft)=&gj($fv,$fu,$ft);}$ge=$gh?&gk($fq,$fr,$gf,$ft,$fu,$fv)
:&gl($fq,$fr,$gf,$ft,$fu,$fv);}else{}($fq,$fr,$gf,$ft,$fu,$fv,
$fw,$fx)=($gh?gmtime($ge):localtime($ge));my$gm;if(exists($av{DateString}{rhNames}))
{$gm=$av{DateString}{rhNames};}else{$gm={$z[273]=>exists($aw{$z[274]}{ampm})
?[split(/,/,$aw{$z[274]}{ampm})]:[qw(AM PM)],$z[275]=>exists($aw{$z[274]}{ordinals})
?[split(/,/,$aw{$z[274]}{ordinals})]:[$z[276],$z[277],$z[278],
$z[279],$z[280],$z[281],$z[282],$z[283],$z[284],$z[285],$z[286],
$z[287],$z[288],$z[289],$z[290],$z[291],$z[292],$z[293],$z[294],
$z[295],$z[296],$z[297],$z[298],$z[299],$z[300],$z[301],$z[302],
$z[303],$z[304],$z[305],$z[306],$z[307]],$z[308]=>exists($aw{$z[274]}{week_full})
?[split(/,/,$aw{$z[274]}{week_full})]:[qw(Sunday Monday Tuesday Wednesday Thursday Friday Saturday)],
$z[309]=>exists($aw{$z[274]}{week_abbr})?[split(/,/,$aw{$z[274]}{week_abbr})]
:[qw(Sun Mon Tue Wed Thu Fri Sat)],$z[310]=>exists($aw{$z[274]}{month_full})
?[split(/,/,$aw{$z[274]}{month_full})]:[qw(January February March April May June July August September October November December)],
$z[311]=>exists($aw{$z[274]}{month_abbr})?[split(/,/,$aw{$z[274]}{month_abbr})]
:[qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec)],};$av{DateString}{rhNames}
=$gm;}my($gn,$go)=(0,1);my$gp={$z[312]=>$z[312],$z[258]=>$gm->{week_abbr}[$fw],
$z[231]=>$gm->{week_full}[$fw],$z[313]=>$gm->{month_abbr}[$fu],
$z[314]=>$gm->{month_full}[$fu],$z[315]=>$z[316],$z[145]=>$z[317],
$z[318]=>sprintf($z[319],$ft),$z[232]=>$z[320],$z[321]=>sprintf($z[322],
$ft),$z[323]=>$gm->{month_abbr}[$fu],$z[324]=>sprintf($z[319],
$gf),$z[325]=>sprintf($z[319],$gf% 12||12),$z[326]=>sprintf($z[327],$fx
+1),$z[328]=>sprintf($z[322],$gf),$z[329]=>sprintf($z[322],
$gf% 12||12),$z[330]=>sprintf($z[319],$fu+1),$z[230]=>sprintf($z[319],
$fr),$z[153]=>"\n",$z[331]=>$gm->{ordinals}[$ft],$z[332]=>$gm->{ampm}[$gf
>=12?1:0],$z[333]=>lc($gm->{ampm}[$gf>=12?1:0]),$z[334]=>int($fu
/3)+1,$z[335]=>$z[336],$z[337]=>$z[338],$z[339]=>$ge,$z[340]
=>sprintf($z[319],$fq),$z[341]=>"\t",$z[342]=>$z[343],$z[344]
=>&gq($gn,$fw,$fx),$z[345]=>$fw,$z[346]=>&gq($go,$fw,$fx),$z[347]
=>$z[320],$z[348]=>$z[343],$z[349]=>sprintf($z[319],$fv% 100),
$z[350]=>sprintf($z[351],$fv+1900),$z[257]=>'',$z[259]=>'',
};$gd=&gr($gp,$gd);return$gd;}sub gr{my($gp,$gd)=@_;$gd=~s/%(O?[%a-zA-Z])/&gs($gp,
$1)/sgeox;return$gd;}sub gs{my$gt=$_[1];return(exists($_[0]->{$gt}))
?($_[0]->{$gt}=~/\%/&&$gt ne$z[312]?&gr($_[0],$_[0]->{$gt})
:$_[0]->{$gt}):"\%$gt";}sub gq{my($gu,$fw,$fx)=@_;$fw=($fw+
7-$gu)% 7;return int(($fx-$fw+13)/7-1);}sub gj{my($fv,$fu,$gv)
=@_;return@_ if$gv<=28;my$gw;if($fu==1){if(($fv% 4==0)&&(!($fv
% 100==0)||($fv% 400==0))){$gw=29;}else{$gw=28;}}elsif($fu==
3||$fu==5||$fu==8||$fu==10){$gw=30;}else{$gw=31;}return($fv,
$fu,$gv<$gw?$gv:$gw);}sub ne{my$gx=$_[0];my$gy=$_[1]||die("DateString: The second argument must time()\n");
my$AF=$_[2];if($gy ne int($gy)){die($z[352]."\n");}my($fq,$fr,$fs,$gv,$fu,$fv,$fw);
if($AF){($fq,$fr,$fs,$gv,$fu,$fv,$fw)=gmtime($gy);}else{($fq,$fr,$fs,$gv,$fu,$fv,$fw)
=localtime($gy);}if($gy=~tr/://){($fv,$fu,$gv,$fs,$fr,$fq,$fw)
=split(/:/,$gy);$fv-=1900;$fu-=1;foreach($fv,$fu,$gv,$fs,$fr,$fq,$fw)
{$_||=0;}}my(%fw,%gz,%fu,%ha);my@fu=($z[353],$z[354],$z[355],$z[356],$z[357],$z[358],$z[359],$z[360],$z[361],$z[362],$z[363],$z[364]);
my@ha=($z[365],$z[366],$z[367],$z[368],$z[357],$z[369],$z[370],$z[371],$z[372],$z[373],$z[374],$z[375]);
my@fw=($z[376],$z[377],$z[378],$z[379],$z[380],$z[381],$z[382]);
my@gz=($z[383],$z[384],$z[385],$z[386],$z[387],$z[388],$z[389]);
foreach(@fw){$fw{lc$_}++;}foreach(@gz){$gz{lc$_}++;}foreach
(@fu){$fu{lc$_}++;}foreach(@ha){$ha{lc$_}++;}$gx=~s/\b[A-Za-z]{3,9}\b/
if($fw{lc$&}){if(uc($&)eq$&){uc$fw[$fw];}elsif(lc($&)eq$&){
lc$fw[$fw];}else{ucfirst lc$fw[$fw];}}elsif($gz{lc$&}){if(uc($&)
eq$&){uc$gz[$fw];}elsif(lc($&)eq$&){lc$gz[$fw];}else{ucfirst 
lc$gz[$fw];}}elsif($fu{lc$&}){if(uc($&)eq$&){uc$fu[$fu];}elsif
(lc($&)eq$&){lc$fu[$fu];}else{ucfirst lc$fu[$fu];}}elsif($ha{lc
$&}){if(uc($&)eq$&){uc$ha[$fu];}elsif(lc($&)eq$&){lc$ha[$fu];
}else{ucfirst lc$ha[$fu];}}else{$&;}/ge;$gx=~s/\d{1,4}\b/if
(length$&==4){$fv+1900;}elsif(length$&<=2){if(substr($&,0,1)
eq 0){sprintf($z[319],$gv);}else{$gv;}}else{$&;}/ge;$gx=~s/(\d{1,2})(st|nd|rd|th)/
if($gv==1||$gv==21||$gv==31){$gv.$z[390];}elsif($gv==2||$gv
==22){$gv.$z[391];}elsif($gv==3||$gv==23){$gv.$z[392];}else
{$gv.$z[393];}/gei;$gx=~s/YYYY/sprintf($z[351],$fv+1900)/gei;
$gx=~s/YY/sprintf($z[319],$fv%100)/gei;$gx=~s/MO\b/sprintf($z[319],$fu+1)/gei;
$gx=~s/DD/sprintf($z[319],$gv)/gei;$gx=~s/SS/sprintf($z[319],$fq)/gei;
$gx=~s/MM/sprintf($z[319],$fr)/gei;$gx=~s/HH/sprintf($z[319],$fs)/gei;
return$gx;}sub cf{my($hb,$ce,$arrayref_nopack)=@_;my(@f_nopack,$cd,$hc,
$hd,$he,$cb);my($bz,$ca);$cb=0;foreach(split(/ /,$ce)){if(s/\#//g)
{$bz=1;}elsif(s/n//g){$bz=1;}else{$bz=0;}if(s/\-//g){$ca=$z[394];
}elsif(s/\+//g){$ca='';}else{$ca='';}s/[^0-9]//gs;push(@f_nopack,$_);
if($bz){$cd+=15;$hd.=$z[395];$he.=qq|$ca sprintf('%015s',int(substr(\$str[$cb]*100,0,15))),|;
}else{$cd+=50;$hd.=$z[396];$he.="$ca substr(\$str[$cb],0,50),";
}$cb++;}$hc.=qq|return map { substr(\$_,$cd) } sort map {\n|;
$hc.=qq|  my \@str = (split(/\\$hb/,lc \$_))[\@f_nopack];\n|;
$hc.=qq|  sprintf("$hd\%s" ,$he\$_);\n|;$hc.=qq|  } \@\$arrayref_nopack;\n|;
eval$hc;}sub fi{my$hf=shift;$hf=~s/\\/\\\\/g;$hf=~s/'/\\'/g;
$hf=~s/\n/\\n/g;$hf=~s/\r/\\r/g;$hf=~s/\000//g;$hf=~s/-->/--'+'>/g;
$hf=~s!</script>!</scr'+'ipt>!g;return$hf;}sub au{my$hg=shift;
$hg=~s/&/&amp;/g;$hg=~s/"/&quot;/g;$hg=~s/</&lt;/g;$hg=~s/>/&gt;/g;
return$hg;}sub fh{my$hg=shift;$hg=~s/&([^\w#]|$)/&amp;$1/g;
$hg=~s/"/&quot;/g;$hg=~s/</&lt;/g;$hg=~s/>/&gt;/g;return$hg;
}sub nf{my$hg=shift;$hg=~s/</&lt;/g;$hg=~s/>/&gt;/g;return$hg;
}sub ng{my$hh=shift;my%hi=map{$_,1}@_;return join($z[214],map
{$hi{$_}?():&fg($_).$z[207].&fg($hh->{$_})}keys%{$hh});}sub 
nh{my$hh=shift;my%hi=map{$_,1}@_;return join("\n",map{$hi{$_}
?():$z[397].&au($_).$z[398].&au($hh->{$_}).$z[399]}keys%{$hh});
}sub ni{$_=$_[0];/\.gif$/i&&return(&hj($_[0]));(/\.jpeg$/i||
/\.jpg$/i)&&return(&hk($_[0]));/\.png$/i&&return(&hl($_[0]));
undef;}sub hl{my($hm)=@_;my($hn);open(PNG,$hm)||return(undef,
undef,"PNG - Couldn't Open $hm");binmode(PNG);seek(PNG,12,0);
read(PNG,$hn,4);if($hn ne"IHDR"){close PNG;return(undef,undef,
"PNG - Missing Image Header - $hn");}read(PNG,$hn,8);close 
PNG;return unpack("NN",$hn);}sub hk{my($hm)=@_;my($hn,$ho,$hp,
$hq,$hr);open(JPEG,$hm)||return(undef,undef,"JPEG - Couldn't Open $hm");
binmode(JPEG);read(JPEG,$hn,2);while(1){read(JPEG,$ho,4);($hp,
$hq,$hr)=unpack("a a n",$ho);if($hp ne"\xFF"){close JPEG;return(undef,
undef,"JPEG - Marker not Found");}if((ord($hq)>=0xC0)&&(ord($hq)
<=0xC3)){read(JPEG,$hn,5);close(JPEG);my($hs,$ht)=unpack("xnn",
$hn);return($ht,$hs);}else{read(JPEG,$hn,$hr-2);}}}sub ib{my
($hu,$hv)=@_;my($hw);read($hu,$hw,$hv);while(1){if(eof($hu))
{close AG;return(undef);}read($hu,$hw,1);last if ord($hw)==
0;read($hu,$hw,ord($hw));}1;}sub hj{my($hm)=@_;my($hn,$eh,$hx,
$hy,$ht,$hz,$hs,$ia);open(AG,$hm)||return(undef,undef,"GIF - Couldn't Open $hm");
binmode(AG);read(AG,$eh,6);read(AG,$hn,7);if(length($hn)!=7)
{close AG;return(undef,undef,"GIF - Corrupted Header");}($ht)
=unpack("x4 C",$hn);if($ht&0x80){$hx=3*(2**(($ht&0x07)+1));
read(AG,$hy,$hx);if(!$hy){close AG;return(undef,undef,"GIF - Corrupted Colour Map");
}}while(1){if(eof(AG)){close AG;return(undef,undef,"GIF - EOF at BlockStart");
}read(AG,$hn,1);($ht)=unpack("C",$hn);if($ht==0x2c){read(AG,
$hn,8);if(length($hn)!=8){close AG;return(undef,undef,"GIF - Missing Image Header");
}($ht,$hz,$hs,$ia)=unpack("x4 C4",$hn);close(AG);return($ht
+$hz* 256,$hs+$ia* 256);}if($ht==0x21){read(AG,$hn,1);($ht)
=unpack("C",$hn);if($ht==0xF9){read(AG,$hn,6);}elsif($ht==0xFE)
{&ib(\*AG,0)||return(undef,undef,"GIF - Bad Block - skip=0");
}elsif($ht==0x01){&ib(\*AG,13)||return(undef,undef,"GIF - Bad Block - skip=13");
}elsif($ht==0xFF){&ib(\*AG,12)||return(undef,undef,"GIF - Bad Block - skip=12");
}else{close AG;return(undef,undef,"GIF - Unknown Block Extension");
}}else{close AG;return(undef,undef,"GIF - Unknown Block Type");
}}}sub nj{return($_[0]=~/(.+)/s)[0]||$_[0];}sub nk{my$ic;foreach
(split/\n/,shift){s!\\!\\\\!g;s!\"!\\\"!g;s!</!<\\/!g;$ic.=
qq|document.write("$_\\n");\n|;}return$ic;}sub nl{my$id=$_[0];
my$ie=$_[1];my$ig=$_[2];my@ih;my$ii;my$ij=scalar@{$id};my$ik
=int($ij/$cols)+int(int($ij/$cols)<($ij/$cols));foreach(@{$id})
{if(++$ii>$ik){$ii=1;}push(@{$ih[$ii]},$_);}if(defined$ig){
foreach(0..$#ih){while(scalar@{$ih[$_]}<$ie){push(@{$ih[$_]},
$ig);}}}shift@ih;return@ih;}sub nm{my($il,%im,$AH);$il=$_[0];
%im=%{$_[1]};$AH="\x0D\x0A";local(*AI);if(!defined&in){die("SMTP_sendmail: Couldn't find required subroutine 'SMTP_parseheader'\n");
}if(!defined&io){die("SMTP_sendmail: Couldn't find required subroutine 'SMTP_debug'\n");
}if(!defined&ip){die("SMTP_sendmail: Couldn't find required subroutine 'SMTP_readline'\n");
}if(!defined&iq){die("SMTP_sendmail: Couldn't find required subroutine 'SMTP_pop3auth'\n");
}if(!defined&ir){die("SMTP_sendmail: Couldn't find required subroutine 'FH_readline'\n");
}if(!defined&is){die("SMTP_sendmail: Couldn't find required subroutine 'FH_can_read'\n");
}foreach(keys%{$av{$z[400]}}){defined$im{$_}&&next;$im{$_}=
$av{$z[400]}{$_};}my($ev,$it,$iu,$iv,$dv);$ev=$im{$z[401]};
$it=$im{$z[402]}||25;$iu=$im{$z[403]}||$z[404];$iv=$im{$z[405]}
||30;$dv=$im{$z[406]}||0;$iv+=time()if$iv<10**8&&$iv>0;if($ev
=~s/:(\d+)//){$it=$1;}if(!$ev){$av{$z[407]}="No SMTP host specified.\n";
return 0;}if(!$it){$av{$z[407]}="No SMTP port specified.\n";
return 0;}my($iw,@ix)=&in($il);$il=~tr/\r//d;$il=~s/\n/\r\n/gs;
$il=~s/^\s*bcc\s*:.*\n//mgi;if($im{$z[408]}){&iq(\%im)||return 
0;}my($iy)=gethostbyname($ev)||do{$av{$z[407]}="Could not connect to SMTP server. Unknown host $ev\n";
return 0;};socket(AI,PF_INET,SOCK_STREAM,0)||do{$av{$z[407]}
="Could not connect to SMTP server.  No Socket: $!\n";return 
0;};connect(AI,pack"SnA4x8",PF_INET,$it,$iy)||do{if($!eq"Unknown error")
{$av{$z[407]}="Could not connect to SMTP server.  SMTP server does not exist or is not responding.\n";
return 0;}else{$av{$z[407]}="Could not connect to SMTP server.  Connect failed: $!\n";
return 0;}};select(AI);$|=1;select(STDOUT);binmode(AI);my$iz
=&ip(\*AI,$iv)||do{$av{$z[407]}="Timed out waiting for SMTP server to respond.\n";
return 0;};if($dv){&io($iz);}if(substr($iz,0,3)ne"220"){$av{$z[407]}
="An unknown error occured.  Server response: $iz\n";return 
0;}print AI"HELO $iu",$AH;if($dv){&io("HELO $iu",$AH);}$iz=
&ip(\*AI,$iv)||do{$av{$z[407]}="Timed out waiting for SMTP server to respond.\n";
return 0;};if($dv){&io($iz);}if(substr($iz,0,3)ne"250"){$av{$z[407]}
="An unknown error occured.  Server response: $iz\n";return 
0;}print AI"MAIL FROM:<$iw>",$AH;if($dv){&io("MAIL FROM:<$iw>",
$AH);}$iz=&ip(\*AI,$iv)||do{$av{$z[407]}="Timed out waiting for SMTP server to respond.\n";
return 0;};if($dv){&io($iz);}if(substr($iz,0,3)ne"250"){$av{$z[407]}
="An unknown error occured.  Server response: $iz\n";return 
0;}my$ix;foreach$ix(@ix){print AI"RCPT TO:<$ix>",$AH;if($dv)
{&io("RCPT TO:<$ix>",$AH);}$iz=&ip(\*AI,$iv)||do{$av{$z[407]}
="Timed out waiting for SMTP server to respond.\n";return 0;
};if($dv){&io($iz);}if(substr($iz,0,2)eq"55"){$av{$z[407]}=
"The server won't accept mail for '$ix'.  Server response: $iz\n";
return 0;}if(substr($iz,0,2)ne"25"){$av{$z[407]}="An unknown error occured.  Server response: $iz\n";
return 0;}}print AI"DATA",$AH;if($dv){&io("DATA",$AH);}$iz=
&ip(\*AI,$iv)||do{$av{$z[407]}="Timed out waiting for SMTP server to respond.\n";
return 0;};if($dv){&io($iz);}if(substr($iz,0,3)ne"354"){$av{$z[407]}
="An unknown error occured.  Server response: $iz\n";return 
0;}$il=~s/^\./\.\./gm;print AI$il,$AH;if($dv){&io($il,$AH);
}print AI".",$AH;if($dv){&io(".",$AH);}$iz=&ip(\*AI,$iv)||do
{$av{$z[407]}="Timed out waiting for SMTP server to respond.\n";
return 0;};if($dv){&io($iz);}if(substr($iz,0,3)ne"250"){$av{$z[407]}
="An unknown error occured.  Server response: $iz\n";return 
0;}print AI"QUIT",$AH;if($dv){&io("QUIT",$AH);}close(AI);return 
1;}sub in{my($il,$ja,$jb,$jc,$db);$il=$_[0];$il=~tr/\r//d;$ja
=$z[409];$ja.=$z[410];if($il=~m/^(.*?)\n\n(.*)$/s){($jb,$jc)
=($1,$2);}else{die("SMTP_parseheader: couldn't find email header!\n");
}my($iw,@ix);foreach$db(split(/\n/,$jb)){foreach(qw(from to cc bcc))
{if($db=~/^\s*$_\s*:/i){my$jd=$_;foreach($db=~m/($ja)/g){if
($jd eq$z[411]){$iw=$_;}else{push@ix,$_;}}}}}$iw||die("SMTP_parseheader: couldn't find from: address in mail header\n");
$#ix>=0||die("SMTP_parseheader: couldn't find to: address in mail header\n");
return($iw,@ix);}sub ip{my$AJ=$_[0];my$iv=int($_[1]);if(!$iv)
{die("SMTP_readline: no timeout value specified!\n");}if($iv
<10**8){die("SMTP_readline: timeout value must be in time() format!\n");
}fileno($AJ)||die("SMTP_readline: invalid filehandle or filehandle not open!\n");
my($db,$je);while(!$db||substr($db,3,1)eq$z[154]){$db=&ir($AJ,$iv);
$je.=$db;}return$je;}sub io{my$dw=join'',@_;$dw=~s/\s+$//m;
my$jf=localtime();local*AK;if(!$dw){$jf="";$dw="\n";}if($dw
=~/^From:/i){$dw="[email content]";}if($dw=~/^PASS /i){$dw=
"PASS (not shown)";}$dw=~s/</&lt;/g;$dw=~s/>/&gt;/g;$dw=~s/\r\n|\n/<br>\n/g;
print"<p>$dw<br>\n\n";}sub iq{my($il,%im,$AH);%im=%{$_[0]};
$AH="\x0D\x0A";local(*AI);if(!$im{$z[412]}){die("SMTP_pop3auth: POP3 username not defined'\n");
}if(!$im{$z[413]}){die("SMTP_pop3auth: POP3 password not defined'\n");
}if($av{$z[414]}{$z[415]}){return 1;}my($ev,$it,$eu,$jg,$iv,$dv);
$ev=$im{$z[416]}||$im{$z[401]};$it=$im{$z[417]}||110;$eu=$im{$z[412]};
$jg=$im{$z[413]};$iv=$im{$z[418]}||$im{$z[405]}||30;$dv=$im{$z[406]}
||0;$iv+=time()if$iv<10**8&&$iv>0;if($ev=~s/:(\d+)//){$it=$1;
}my($iy)=gethostbyname($ev)||do{$av{$z[407]}="Could not connect to POP3 server. Unknown host $ev\n";
return 0;};socket(AI,PF_INET,SOCK_STREAM,0)||do{$av{$z[407]}
="Could not connect to POP3 server.  No Socket: $!\n";return 
0;};connect(AI,pack"SnA4x8",PF_INET,$it,$iy)||do{if($!eq"Unknown error")
{$av{$z[407]}="Could not connect to POP3 server.  POP3 server does not exist or is not responding.\n";
return 0;}else{$av{$z[407]}="Could not connect to POP3 server.  Connect failed: $!\n";
return 0;}};select(AI);$|=1;select(STDOUT);binmode(AI);my$iz
=&ir(\*AI,$iv)||do{$av{$z[407]}="Timed out waiting for POP3 server to respond.\n";
return 0;};if($dv){&io($iz);}if(uc(substr($iz,0,3))ne"+OK")
{$av{$z[407]}="An unknown error occured.  Server response: $iz\n";
return 0;}print AI"USER $eu",$AH;if($dv){&io("USER $eu",$AH);
}$iz=&ir(\*AI,$iv)||do{$av{$z[407]}="Timed out waiting for POP3 server to respond.\n";
return 0;};if($dv){&io($iz);}if(substr($iz,0,3)ne"+OK"){$av{$z[407]}
="The server didn't accept the login info for '$eu'.  Server response: $iz\n";
return 0;}print AI"PASS $jg",$AH;if($dv){&io("PASS $jg",$AH);
}$iz=&ir(\*AI,$iv)||do{$av{$z[407]}="Timed out waiting for POP3 server to respond.\n";
return 0;};if($dv){&io($iz);}if(substr($iz,0,3)ne"+OK"){$av{$z[407]}
="The server didn't accept the login info for '$eu'.  Server response: $iz\n";
return 0;}print AI"QUIT",$AH;if($dv){&io("QUIT",$AH);}close(AI);
$av{$z[414]}{$z[415]}=1;return 1;}sub is{my$AJ=$_[0];my$iv=
$_[1]||$z[266];my($jh,$ji,$jj,$jk,$jl,$jm,$jn);fileno($AJ)||
die("fh_can_read: invalid filehandle or filehandle not open!\n");
vec($jh,fileno($AJ),1)=1;$jn=select($ji=$jh,undef,undef,$iv);
return vec($ji,fileno($AJ),1);}sub ir{my$AJ=$_[0];my$iv=int($_[1]);
if(!$iv){die("FH_readline: no timeout value specified!\n");
}if($iv<10**8){die("FH_readline: timeout value must be in time() format!\n");
}fileno($AJ)||die("FH_readline: invalid filehandle or filehandle not open!\n");
my($db,$jo);while($iv>=time()){&is(\*AI,0.25)||next;sysread(\*AI,$jo,
1)||last;$db.=$jo;if($jo eq"\x0A"){last;}}return$db;}sub jy
{my$jp=$av{$z[419]}{$z[420]}||={};my$jq=int++$jp->{$z[421]};
my$ed="FH$jq";return eval"local *$ed";}sub dg{return unless
($aw{$z[422]});my$jp=$av{$z[419]}{$z[423]}||={};$jp->{$z[424]}
||=[];my($jr,$iv)=@_;$jr||=$z[179];$iv||=0;if($jr ne$z[179]
and$jr ne$z[425]){&az("lock: invalid lock type: '$jr'");}my
$js;if(@{$jp->{$z[424]}}>0){$js=$jp->{$z[424]}[-1];}if($js 
eq$z[179]){$jr=$js;}if($js eq$jr){push(@{$jp->{$z[424]}},$jr);
return 1;}my$jt;if($js eq$z[425]and$jr eq$z[179]){&az("lock: cannot upgrade a 'shared' lock to an 'exclusive' lock");
}$jt=&ju('',$jr,$iv);if($jt){push(@{$jp->{$z[424]}},$jr);}return
$jt;}sub dh{return unless($aw{$z[422]});my$jp=$av{$z[419]}{$z[423]}
||={};$jp->{$z[424]}||=[];my($iv)=@_;$iv||=0;unless(@{$jp->{$z[424]}}
>0){&az($z[426])}my$js=pop(@{$jp->{$z[424]}});return if(@{$jp->{$z[424]}}
>0 and$jp->{$z[424]}[-1]eq$js);if(@{$jp->{$z[424]}}==0){&jv('');
}}sub ju{my$jp=$av{$z[419]}{$z[423]}||={};my($jw,$jr,$iv)=@_;
my$jx;if($jw){$jx="$av{'datadir'}$jw.lock";}else{$jx=$av{$z[427]};
}if(not exists$jp->{$z[428]}{$jw}){$jp->{$z[428]}{$jw}{$z[429]}
=$jx;$jp->{$z[428]}{$jw}{$z[430]}=&jy();sysopen($jp->{$z[428]}{$jw}{$z[430]},
$jp->{$z[428]}{$jw}{$z[429]},O_RDONLY|O_CREAT)||&az($z[427],"error opening $jr file lock $jp->{'lockinfo'}{$jw}{'filename'}: $!\n");
}else{&az("_lock_flock: already a lock for semaphore '$jw'");
}my$jz;if($jr eq$z[425]){$jz=LOCK_SH;}if($jr eq$z[179]){$jz
=LOCK_EX;}if($iv>0){$jz|=LOCK_NB;}my$ka=time()+$iv;until(flock($jp->{$z[428]}{$jw}{$z[430]},
$jz)){if(time()<$ka){sleep(1);}else{close($jp->{$z[428]}{$jw}{$z[430]});
&az($z[431]);}}return 1;}sub jv{my$jp=$av{$z[419]}{$z[423]}
||={};my($jw)=@_;unless(flock($jp->{$z[428]}{$jw}{$z[430]},
LOCK_UN)){&az($z[427],"error releasing a flock() on file lock $jp->{'lockinfo'}{$jw}{'filename'}: $!\n");
}unless(close($jp->{$z[428]}{$jw}{$z[430]})){&az($z[427],"error closing file lock $jp->{'lockinfo'}{$jw}{'filename'}: $!\n");
}delete$jp->{$z[428]}{$jw};return 1;}sub nn{my$eg=shift;$eg
=~s|\\|/|g;if($eg=~m|^/|){return$eg;}if($eg=~m|^\w:/|){return
$eg;}return&kb($av{$z[432]}.$z[246].$eg);}sub kb{my$eg=shift;
$eg=~s|\\|/|g;1 while$eg=~s|[^/]*/\.\./||;return$eg;}sub np
{my($kc,@im)=@_;$kc=~s/\s+//g;$kc=uc$kc;my$kd;my$ke=-1;my$kf;
foreach$kf(split(/,/,$kc)){$ke++;my$kg=shift@im;my$kh=$kf=~
s/\[|\]//g;if($kf eq$z[433]){@im=();last;}next if($kh and not 
defined$kg);next if($kf eq$z[434]and defined$kg);next if($kf
=~/\bVALUE\b/and not ref($kg)and defined($kg));next if(uc(ref
$kg)=~/\b$kf\b/);next if($kf=~/\bINT\b/and$kg!~/[^0-9\.\e\-]/i 
and$kg==int($kg));$kd.=", "if$kd;$kd.="\$_[$ke] must be ";$kd
.="either "if$kh;$kd.=$kf;$kd.=" or undefined"if$kh;$kd.=" ARG: $kg.";
}if(@im){$ke++;$kd.=", "if$kd;$kd.="extra argument(s) \@_["
.($ke)." .. ".($ke+$#im)."]";}return 1unless$kd;my$ek=(caller(1))[3];
$ek=~s/^main:://;&az("Invalid arguments passed to $ek".": $kd");
}1;;sub nq{$ae{$z[435]}=int sprintf($z[436],&ki($ad{$z[437]}));
$av{$z[438]}=&kj();if($ENV{$z[219]}eq$z[335]){&kk;}if($ad{$z[318]})
{&kl($z[439]);}my$km=$z[440].$z[441].$z[442].$z[443];("96351328555555555555555555555555238737:55555555555555555555555555211741355555555555555555555555555491816455555555555555555555555555","14759782872373089936976192946")
-$av{$z[438]}&&&kl(pack($z[261],$km));if(!$ad{$z[444]}){&kn;
}if(!$ae{$z[435]}){die("Invalid Product ID number $ad{'reg3'}\n");
}my($ko);($ko=lc$av{$z[432]})=~s/[^a-z0-9]//g;if($ad{$z[315]}
!=unpack$z[445],pack$z[446],$ko){$ad{$z[315]}=unpack$z[445],
pack$z[446],$ko;&da($as{$z[114]},\%ad,1);&kk;}if(&ki&&int(rand(50)+1)==1)
{print$z [447],"\n\n";exit;}}sub kn{&ac($z[448],{});my@kp=(
undef,\&kq,\&kr,\&ks,\&kt,\&ku,\&kv,\&kw,);if($ad{$z[449]}&&
$ad{$z[450]}&&$ad{$z[437]}&&&ki($ad{$z[437]})){if($ag{$z[451]})
{&kx;}if($ag{$z[452]}){&ky($z[453]);}if($ag{$z[454]}){&ky($z[455]);
}}my$kz=int($ag{$z[456]})||1;if($kz>$#kp){die("Install: Invalid step number!\n");
}$ae{$z[457]}=$kz;if(!$ag{$z[458]}&&$kz==1){&{$kp[1]};}else
{&{$kp[$kz]}($z[458]);$ae{$z[457]}=$kz+1;&{$kp[$kz+1]};}}sub 
kq{my$la=shift;if(!$la){print"Content-type: text/html\n\n";
foreach($z[459],$z[460],$z[461]){print&af($_,{});}&lb();exit;
}undef;}sub kr{my$la=shift;if(!$la){print"Content-type: text/html\n\n";
foreach($z[459],$z[462],$z[461]){print&af($_,{});}&lb();exit;
}if($ag{$z[463]}){return;}else{print"Location: http://www.interactivetools.com/\n\n";
&lb();exit;}}sub ks{my$la=shift;if(!$la){$ae{$z[464]}||=$ENV{$z[465]}
||$ENV{$z[466]};print"Content-type: text/html\n\n";foreach($z[459],$z[467],$z[461])
{print&af($_,{});}&lb();exit;}$ag{$z[437]}=~s/\s+//g;if(!&ki($ag{$z[437]}))
{$ae{$z[407]}=$z[468];}if(!$ag{$z[437]}){$ae{$z[407]}=$z[469];
}if(!$ag{$z[450]}){$ae{$z[407]}=$z[470];}if(!$ag{$z[449]}){
$ae{$z[407]}=$z[471];}if($ae{$z[407]}){print"Content-type: text/html\n\n";
foreach($z[449],$z[450],$z[437]){$ae{$z[472].$_}=$ag{$_};}foreach
($z[459],$z[467],$z[461]){print&af($_,{});}&lb();exit;}&ar($as{$z[114]},
\%ad,1);foreach($z[449],$z[450],$z[437]){$ad{$_}=$ag{$_};}$ad{$z[4]}
=$av{$z[46]};&da($as{$z[114]},\%ad,1);}sub kt{my$la=shift;if
(!$la){$ae{$z[473]}=$ad{$z[473]};$ae{$z[473]}||=(&ld($z[474]))[0];
print"Content-type: text/html\n\n";foreach($z[459],$z[475],$z[461])
{print&af($_,{});}&lb();exit;}&ar($as{$z[114]},\%ad,1);$ad{$z[473]}
=$ag{$z[473]};if($ad{$z[473]}!~/\/$/){$ad{$z[473]}.=$z[246];
}&da($as{$z[114]},\%ad,1);}sub kx{my$la=shift;$ae{$z[476]}=
$ag{$z[477]};if($ae{$z[476]}!~/\/$/){$ae{$z[476]}.=$z[246];
}$ae{$z[478]}=$z[479];print"Content-type: text/html\n\n";foreach
($z[459],$z[451],$z[461]){print&af($_,{});}&lb();exit;}sub 
ku{my$la=shift;if(!$la){($ae{$z[480]},$ae{$z[481]})=($ad{$z[480]},
$ad{$z[481]});unless($ae{$z[480]}||$ae{$z[481]}){($ae{$z[480]},
$ae{$z[481]})=&ld($z[482]);}($ae{$z[2]},$ae{$z[483]})=($ad{$z[2]},
$ad{$z[483]});unless($ae{$z[2]}||$ae{$z[483]}){($ae{$z[2]},
$ae{$z[483]})=&ld($z[484]);}$ae{$z[485]}=$ad{$z[485]};unless
($ae{$z[485]}){$ae{$z[485]}=$ENV{$z[486]};$ae{$z[485]}=~s|/[^/]+$|/search.cgi|;
$ae{$z[485]}=~s|^/||;$ae{$z[485]}=$z[487].($ENV{$z[465]}||$ENV{$z[466]}
||$ENV{$z[488]}).$z[246].$ae{$z[485]};}$ae{$z[489]}=$ad{$z[489]};
unless($ae{$z[489]}){$ae{$z[489]}=$ENV{$z[486]};$ae{$z[489]}
=~s|/[^/]+$|/view.cgi|;$ae{$z[489]}=~s|^/||;$ae{$z[489]}=$z[487].($ENV{$z[465]}
||$ENV{$z[466]}||$ENV{$z[488]}).$z[246].$ae{$z[489]};}print
"Content-type: text/html\n\n";foreach($z[459],$z[490],$z[461])
{print&af($_,{});}&lb();exit;}foreach(keys%ag){if(/^dir_/||
/^url_/){if(!$ag{$_}){next;}$ag{$_}=~tr|\\|/|;if(/^url_/&&index($ag{$_},$z[491])
>=0){next;}if(/^url_/&&index($ag{$_},$z[492])>=0){next;}if(substr($ag{$_},-1,1)
ne$z[246]){$ag{$_}.=$z[246];}}}&ar($as{$z[114]},\%ad,1);$ad{$z[485]}
=$ag{$z[485]};$ad{$z[489]}=$ag{$z[489]};$ad{$z[480]}=$ag{$z[480]};
$ad{$z[2]}=$ag{$z[2]};$ad{$z[481]}=$ag{$z[481]};$ad{$z[483]}
=$ag{$z[483]};&da($as{$z[114]},\%ad,1);}sub kv{my$la=shift;
if(!$la){print"Content-type: text/html\n\n";foreach($z[459],$z[493],$z[461])
{print&af($_,{});}&lb();exit;}my%le;if(!$ag{$z[494]}||!$ag{$z[495]})
{$ae{$z[407]}=$z[496];}elsif(&lf($as{$z[107]},\%le,$z[497],
$ag{$z[494]})){if($le{$z[498]}eq$ag{$z[495]}){return;}$ae{$z[407]}
=$z[499];}if($ae{$z[407]}){print$z [500]."\n\n";foreach($z[459],$z[493],$z[461])
{print&af($_,\%ag);}&lb();exit;}my%eu=($z[501]=>$^T,$z[502]
=>$^T,$z[36]=>$ag{$z[494]},$z[497]=>$ag{$z[494]},$z[498]=>$ag{$z[495]},
$z[503]=>$z[504]);&de($as{$z[107]},\%eu);}sub kw{if(!&ki($ad{$z[437]}))
{print"Location: $av{'cgiurl'}?step=1\n\n";exit;}if(!$ad{$z[437]})
{print"Location: $av{'cgiurl'}?step=1\n\n";exit;}if(!$ad{$z[450]})
{print"Location: $av{'cgiurl'}?step=1\n\n";exit;}if(!$ad{$z[449]})
{print"Location: $av{'cgiurl'}?step=1\n\n";exit;}my($ko);($ko
=lc$av{$z[432]})=~s/[^a-z0-9]//g;&ar($as{$z[114]},\%ad,1);$ad{$z[315]}
=unpack$z[445],pack$z[446],$ko;$ad{$z[444]}=1;&da($as{$z[114]},
\%ad,1);&lg($z[497],'');undef$ax{$z[497]};&lg($z[498],'');undef
$ax{$z[498]};&kk;}sub ld{&dv("guess_url_and_dir(@_)");my$lh
=shift;$lh=~s|^/||;(my$li=$lh)=~s|/[^/]+$|/|;(my$lj=$ENV{$z[486]})
=~s|/[^/]+$|/|;$lj=~s|^/||;$lj=$z[487].($ENV{$z[465]}||$ENV{$z[466]}
||$ENV{$z[488]}).$z[246].$lj;my$lk=$av{prog_name2};my@ll=qw( htdocs httpd www web html );
my@lm;push@lm,[$z[505],$z[505]];push@lm,[$z[506].$lk.$z[246],
$z[506].$lk.$z[246]];foreach(@ll){push@lm,[$z[506].$lk.$z[246],
$z[506].$_.$z[246].$lk.$z[246]];}foreach(@ll){push@lm,[$z[506],
$z[506].$_.$z[246]];}push@lm,[$z[506],$z[506]];foreach(@lm)
{my($ln,$lo)=@$_;&dv($z[507]."$av{'cgidir'}/$lo$lh<br>");if
(-e"$av{'cgidir'}/$lo$lh"){return(&lp("$lj$ln$li"),&lp("$av{'cgidir'}/$lo$li"));
}}return(&lp("$lj../$li"),&lp("$av{'cgidir'}/../$li"));}sub 
lp{my$eg=shift;1 while($eg=~s|/[^/]+/\.\.||);return$eg;}sub 
ki{my($ad,$cb,$lq,$lr,@ls)=(shift,(undef)x3,265,193);my%lt=map
{$_,$cb++}split(//,$z[508]);$ad=~s/-//g;my@ad=split(//,$ad);
for(0,1){my$lu;for(0..7){$lu*=33;$lu+=$lt{shift@ad}}$lq=$lu/($av{$z[52]}* 
shift(@ls))-1261;($lq-int$lq||$lq<1||($lr&&$lq!=$lr))?return 
undef:($lr=$lq)}$lq}sub kk{&dv("sub _register<br>");my($lv);
my$ev=$ENV{$z[465]}||$ENV{$z[466]}||$ENV{$z[488]};my$eg=$ENV{$z[486]}
||$ENV{$z[509]};$lv.=$z[510].&fg($ad{$z[449]});$lv.=$z[511]
.&fg($ad{$z[450]});$lv.=$z[512].&fg($ae{$z[435]});$lv.=$z[513]
.&fg($av{$z[48]});$lv.=$z[514].&fg($av{$z[50]});$lv.=$z[515]
.&fg("$ev$eg");$lv.=$z[516].&fg($av{$z[438]});&dv($lv);my$iy
=gethostbyname($z[517])||return;local(*AI);socket(AI,&PF_INET,
&SOCK_STREAM,0)||die("No Socket: $!");connect(AI,pack"SnA4x8",
&PF_INET,80,$iy)||return;select(AI);$|=1;select(STDOUT);print 
AI"GET /register/register.cgi?$lv HTTP/1.0\n";print AI"Referer: $ENV{'HTTP_REFERER'}\n";
print AI"User-Agent: itools_software\n\n";my$lw=join("",<AI>);
close(AI);if($lw=~/itools\.license\.invalid/){$ad{$z[318]}=
1;}if($lw=~/itools\.license\.valid/){$ad{$z[318]}=0;}&dv($lw);
&da($as{$z[114]},\%ad,1);if($ad{$z[318]}){&kl($z[439]);}}sub 
kj{local(*AB);open(AB,"<$av{'cgidir'}/$av{'cgifile'}");<AB>;
binmode(AB);my$je.=join'',<AB>;close(AB);$je=~tr/\r\n//d;$av{$z[438]}
=unpack$z[445],$je;}1;;%aw=&lx("$bc/config.ini");$ae{$z[518]}
=$aw{$z[519]}{$z[520]}||"#336699";$av{$z[521]}=$aw{$z[521]}
||$z[522];$av{$z[427]}=$aw{$z[427]}||$z[523];$av{$z[524]}=$aw{$z[519]}{$z[524]}
||$z[525];$av{$z[526]}=$aw{$z[519]}{$z[526]}||$z[527];$av{$z[528]}
=$aw{$z[519]}{$z[528]}||$z[343];&az("macftp")if$z[529]ne"\xA1";
&az($z[530])if$ENV{$z[531]}&&!$aw{$z[532]};%av=(%av,$z[432]
=>$bc,$z[533]=>$ba,$z[534]=>$ba,$z[535]=>$z[536],$z[537]=>$z[538],
$z[539]=>$z[540],$z[541]=>0,);foreach(qw(datadir filelock templatedir1 templatedir2 templatedir3 archive))
{if(ref($av{$_})){next;}$av{$_}="$bc/$av{$_}"if(index($av{$_},$z[542])
==0);$av{$_}=~s|\\|/|g;1 while$av{$_}=~s|/[^/]+/\.\./|/|;}&ar($as{$z[114]},
\%ad,1);if(!$ad{$z[444]}){&az($z[543]);}foreach(grep/^dir_/,
keys%ad){$ad{$_}="$av{'cgidir'}/$ad{$_}"if index($ad{$_},$z[542])
==0;$ad{$_}=~tr|\\|/|;1 while$ad{$_}=~s|/[^/]+/\.\.||;}if(!$ENV{$z[486]})
{if($ARGV[0]=~/^publish$/i){&ly();}print$z [544],"\n\n";exit;
}foreach(qw(prog_name prog_name2 prog_ver cgidir cgiurl)){$ae{$z[472].$_}
=$av{$_};}foreach(qw(url_help reg1 reg2 reg3)){$ae{$z[472].$_}
=$ad{$_};}$ae{$z[545]}=$ad{$z[473]};$ae{$z[546]}=join$z[547],
grep{$_}$av{$z[46]},$ad{$z[4]};$ae{$z[548]}||=$ad{$z[4]};%ag
=&lz;%ax=&ma;}sub az{my($mb)=$ae{$z[549]};my($eh,$mc,$md)=@_;
my(%me,$mf,$mg);$mc=&au($mc);$ae{$z[518]}||="#336699";%me=($z[550]
=>[("Can't find record # $mc","The program can't find the specified record number in the database.  This is usually because the record has already been erased.  Reload the record list and try again.")],
$z[551]=>[("Warning: File/Directory not writeable!","This web application needs to be able to create and update it's data files.  Please ask your server administrator to make the following files and directories writeable:<p><font size=1>$mc</font>")],
$z[427]=>[("Warning: Persistent Filelock!","This web application uses 'file locks' to ensure than only one user can update data at a time. The program was halted while in the middle of writing/accessing data because it could not obtain a filelock. Please ask your server administrator to fix the permissions (you need read-write access on your data directory). <p>For your reference, the filelock error was: '$mc'.")],
$z[431]=>[($z[552],$z[553])],$z[554]=>[("Warning: Program corrupted during upload!",
"This is usually caused by Mac FTP clients that have an \"Translate ISO characters\" setting enabled.<p>If you are using a Mac, try disabling this setting and re-uploading all the files, otherwise, contact support for assistance. ")],
$z[555]=>[("Publishing Error","The program cannot create or write to the file:<br><br><font size=1>$mc</font><br><br>Please ask your server administrator to make sure the publish directory and publish file(s) are writable.")],
$z[530]=>[("Program doesn't support mod_perl","Your server is running $ENV{MOD_PERL}<br><br>This program doesn't support mod_perl.  Please ask your server administrator to disable mod_perl for this program.")],
$z[556]=>[($z[557],$z[558])],$z[559]=>[("No such file or directory",
"The program can't find the file or directory it's looking for.  Please make sure the following file or directory exists:<br><br><font size=1>$mc</font>")],
$z[560]=>[("Permission denied","The program doesn't have permission to access a required file.  Please make sure the program has read and write access to the following directories and files:<br><br><font size=1>$mc</font>")],
$z[206]=>[("File System Error!","The program is unable to access a required file. Please contact your server administrator or technical support for assistance. <p>The error was: $mc",
$mh)],);my($mi)=$ae{$z[546]}||$me{$eh}[0]||"Program Message";
if($me{$eh}[0]){$mg=$me{$eh}[0];}elsif($mc&&$eh){$mg=&au($eh);
}else{$mg="Program Message";}$mf=$me{$eh}[1]||$mc||&au("@_");
if(!$me{$eh}[1]){$mf=~s/\n/<br><br>\n/g;}if(!$ENV{$z[486]})
{$mf=~s/(<.*?>)+/\n/g;print"\n\nFatal Error: $mg\n\n$mf\n\n";
exit;}if($av{$z[406]}){$mf.="<p><b>Stack Trace</b><br>";$mf
.="<p><table border=0 width=100% cellspacing=0 cellpadding=2>";
my$cb=0;while(my($dy,$db,$ek)=(caller($cb++))[1,2,3]){$dy=~
s/^.*[\/\\]//;$ek=~s/^main:://;unless($ek=~s/__ANON__/(anonymous)/)
{$ek=$z[214].$ek;}$mf.=qq!<td width=1%><font face="ms sans serif,arial" size=2><nobr>&nbsp;$dy</nobr></font></td>!;
$mf.=qq!<td width=1%><font face="ms sans serif,arial" size=2><nobr>&nbsp;($db)</nobr></font></td>!;
$mf.=qq!<td width=1%><font face="ms sans serif,arial" size=2>&nbsp;</font></td>!;
$mf.=qq!<td width=75%><font face="ms sans serif,arial" size=2><nobr>&nbsp;called&nbsp;$ek&nbsp;</nobr></font></td>!;
$mf.=qq!\n</tr><tr height=5><td></td></tr><tr>!;}$mf.="</table><br>";
}if(!$av{$z[541]}++){print"Cache-Control: no-cache\nPragma: no-cache\nExpires: -1\n";
print"Content-type: text/html\n\n";}my$mj=$z[561]if$md;print 
qq|<!-- \n\n $av{'prog_name'} v$av{'prog_ver'} (License #$ae{'_license_num'})\n Copyright (C) 2001 interactivetools.com, inc., All Rights Reserved\n http://www.interactivetools.com/\n\n This product is licensed to:\n\n $ad{'reg1'}\n $ad{'reg2'}\n\n-->\n<html>\n <head>\n  <title>$mi</title>\n  <meta name="robots" content="noindex,nofollow">\n </head>\n<body bgcolor="$ae{'_ui_bgcolor'}" link="#000099" vlink="#000099" alink="#000099">\n<form method=post action="$mb">\n<table border=0 cellspacing=0 cellpadding=0 width=100% height=90%><tr><td align=center>\n<table border="0" cellpadding="0" cellspacing="0" width=350><tr><td bgcolor="#000000">\n<table border="0" cellpadding="6" cellspacing="1" width=100%><tr><td bgcolor="#FFFFFF">\n <font face="ms sans serif,arial" size=2>\n <p><b>$mg</b><br><br>\n $mf\n <p><div align=right><input type="submit" $mj value="  ok  "></div>\n </font>\n</td></tr></table>\n</td></tr></table>\n</td></tr></table>\n</form></body></html>\n|
;if($av{$z[406]}&&$av{$z[215]}){print"<p><font color=\"#66CCFF\">";
print"<pre>$av{'debug_output'}"if($av{$z[215]});print"</font>";
}if($av{$z[562]}){rmdir($av{$z[427]})&&undef$av{$z[562]};}printf($z[563]."\n",time()-$^T);
print$z [564]."\n\n";exit;}sub ai{my$mk=shift;my$bx=sub{my$aq
=shift;if(not$aq->{$z[565]}){my$an=($mk==$aq->{$z[421]})?$z[24]
:'';$ae{$z[566]}.=qq|<option value="$aq->{'num'}"$an>$aq->{'name'}</option>\n|;
}};&ml($as{$z[35]},$bx);}sub nr{my$mm=shift;foreach(grep/^templatedir/,
sort keys%av){if(-e"$av{$_}/$mm"){return 1;}}return 0;}sub 
ns{my($fb,$hh,@mn)=@_;my$mo;foreach$mo(@mn){if(defined$av{$z[240]}{$z[248]}{$fb
.$mo}){$fb.=$mo;}else{last;}}&af($fb,$hh);}sub ah{%at=($z[567]
=>$z[568],$z[569]=>$z[570],$z[571]=>$z[572],$z[573]=>$z[574],
$z[575]=>$z[576],$z[577]=>$z[578],);%aj=&lx("$av{'cgidir'}/../templates/syndicate/styles.ini");
$aj{$z[21]}={$z[15]=>$z[579],$z[580]=>$z[228],$z[581]=>$z[582],
$z[37]=>$z[567],$z[583]=>$z[584],$z[585]=>$z[586],$z[587]=>
$z[582],$z[588]=>$z[582],$z[589]=>$z[582],$z[38]=>$z[567],$z[590]
=>$z[591],$z[592]=>$z[593],$z[594]=>$z[582],$z[595]=>$z[582],
$z[596]=>$z[582],$z[39]=>$z[567],$z[597]=>$z[584],$z[598]=>
$z[593],$z[520]=>$z[599],};}sub al{my$mp=shift;foreach(keys
%{$mp}){if(!/\W/&&$mp->{$_}!~/\W/){$mp->{$_.$z[472].$mp->{$_}.$z[600]}
=$z[601];$mp->{$_.$z[472].$mp->{$_}.$z[602]}=$z[603];}}return
$mp;}sub ap{my%ao;foreach(keys%{$aj{$z[21]}}){$ao{$_}=$aj{$z[21]
}{$_};}if(defined$ag{$z[19]}&&$ag{$z[19]}ne$z[20]){$ao{$z[19]}
=$ag{$z[19]};foreach(keys%{$aj{$ag{$z[19]}}}){$ao{$_}=$aj{$ag{$z[19]}}{$_};
}}else{$ao{$z[19]}=$z[20];foreach(keys%{$aj{$z[21]}}){if($ag{$_})
{$ao{$_}=$ag{$_};}elsif(defined$ag{$_.$z[22]}){$ao{$_}=$ag{
$_.$z[22]};}}}foreach($z[8],$z[7],$z[604],$z[605],$z[606]){
if($ag{$_}){$ao{$_}=$ag{$_};}elsif(defined$ag{$_.$z[22]}){$ao{$_}
=$ag{$_.$z[22]};}}return%ao;}sub ak{my($el)=@_;my$mq={};my$mr;
foreach$mr(keys%$el){$mq->{$mr}=&fh($el->{$mr});}return$mq;
}
# ----------------------------------------------------------------------------
#   Programming by interactivetools.com, inc. <info@interactivetools.com>
