From dd51c4fb816727a9bd8b59f4ff8fd9b32c044c03 Mon Sep 17 00:00:00 2001 From: gnuboard Date: Fri, 15 Feb 2013 13:29:52 +0900 Subject: [PATCH] =?UTF-8?q?=EC=84=A4=EC=B9=98=20=EC=9E=91=EB=8F=99=20?= =?UTF-8?q?=EC=99=84=EB=A3=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- LICENSE.txt | 208 ++++++++ install/{sql_gnuboard4.sql => gnuboard4s.sql} | 455 +++++++++++------- install/img/all_bg.gif | Bin 6539 -> 0 bytes install/img/all_bg_01.gif | Bin 2093 -> 0 bytes install/img/box_bottom.gif | Bin 144 -> 0 bytes install/img/box_left.gif | Bin 104 -> 0 bytes install/img/box_line.gif | Bin 96 -> 0 bytes install/img/box_right.gif | Bin 118 -> 0 bytes install/img/box_title.gif | Bin 7152 -> 0 bytes install/img/box_title2.gif | Bin 31229 -> 0 bytes install/img/box_title3.gif | Bin 31130 -> 0 bytes install/img/box_top.gif | Bin 4865 -> 0 bytes install/img/top.swf | Bin 12710 -> 0 bytes install/index.php | 104 +--- install/install.inc.php | 21 +- install/install_config.php | 248 ++++------ install/install_db.php | 264 ++++------ 17 files changed, 696 insertions(+), 604 deletions(-) create mode 100644 LICENSE.txt rename install/{sql_gnuboard4.sql => gnuboard4s.sql} (66%) delete mode 100644 install/img/all_bg.gif delete mode 100644 install/img/all_bg_01.gif delete mode 100644 install/img/box_bottom.gif delete mode 100644 install/img/box_left.gif delete mode 100644 install/img/box_line.gif delete mode 100644 install/img/box_right.gif delete mode 100644 install/img/box_title.gif delete mode 100644 install/img/box_title2.gif delete mode 100644 install/img/box_title3.gif delete mode 100644 install/img/box_top.gif delete mode 100644 install/img/top.swf diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 000000000..9aba762af --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,208 @@ +소프트웨어 제품은 저작권법 및 국제저작권 협약을 비롯하여, 기타 지적재산권법 및 협약의 보호를 받습니다. + +프로그램 명칭 : 그누보드4S (GNUBoard 4 Second Edition) + +저작자 : (주)에스아이알소프트 http://sir.co.kr + +라이센스 (License) + +번역문 아래에 원문이 있습니다. + +주의 ) +1. 번역문과 원문의 내용상 차이가 있는 경우 원문의 내용을 우선으로 따릅니다. +2. 법적인 분쟁이 발생한 경우 저작자의 회사 소재지를 관할하는 관할법원에서 분쟁을 해결합니다. +3. 이 라이센스 파일 및 내용은 저작자를 제외한 어느 누구도 추가, 수정, 삭제할 수 없습니다. + +----- GPL 번역문 -------------------------------------------------------- + +GNU 일반 공중 사용 허가서 +2판, 1991년 6월 + +Copyright (C) 1989, 1991 Free Software Foundation, Inc. +59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +누구든지 본 사용 허가서를 있는 그대로 복제하고 배포할 수 +있습니다. 그러나 본문에 대한 수정은 허용되지 않습니다. + + + + +전 문 +소프트웨어에 적용되는 대부분의 사용 허가서(license)들은 소프트웨어에 대한 수정과 공유의 자유를 제한하려는 것을 그 목적으로 합니다. 그러나 GNU 일반 공중 사용 허가서(이하, ``GPL''이라고 칭합니다.)는 자유 소프트웨어에 대한 수정과 공유의 자유를 모든 사용자들에게 보장하기 위해서 성립된 것입니다. 자유 소프트웨어 재단이 제공하는 대부분의 소프트웨어들은 GPL에 의해서 관리되고 있으며, 몇몇 소프트웨어에는 별도의 사용 허가서인 GNU 라이브러리 일반 공중 사용 허가서(GNU Library General Public License)를 대신 적용하기도 합니다. 자유 소프트웨어란, 이를 사용하려고 하는 모든 사람에 대해서 동일한 자유와 권리가 함께 양도되는 소프트웨어를 말하며 프로그램 저작자의 의지에 따라 어떠한 종류의 프로그램에도 GPL을 적용할 수 있습니다. 따라서 여러분이 만든 프로그램에도 GPL을 적용할 수 있습니다. + +자유 소프트웨어를 언급할 때 사용되는 ``자유''라는 단어는 무료(無料)를 의미하는 금전적인 측면의 자유가 아니라 구속되지 않는다는 관점에서의 자유를 의미하며, GPL은 자유 소프트웨어를 이용한 복제와 개작, 배포와 수익 사업 등의 가능한 모든 형태의 자유를 실질적으로 보장하고 있습니다. 여기에는 원시 코드(source code)의 전부 또는 일부를 원용해서 개선된 프로그램을 만들거나 새로운 프로그램을 창작할 수 있는 자유가 포함되며, 자신에게 양도된 이러한 자유와 권리를 보다 명확하게 인식할 수 있도록 하기 위한 규정도 포함되어 있습니다. + +GPL은 GPL 안에 소프트웨어를 양도받을 사용자의 권리를 제한하는 조항과 단서를 별항으로 추가시키지 못하게 함으로써 사용자들의 자유와 권리를 실제적으로 보장하고 있습니다. 자유 소프트웨어의 개작과 배포에 관계하고 있는 사람들은 이러한 무조건적인 권리 양도 규정을 준수해야만 합니다. + +예를 들어 GPL 프로그램을 배포할 경우에는 프로그램의 유료 판매나 무료 배포에 관계없이 자신이 해당 프로그램에 대해서 가질 수 있었던 모든 권리를, 프로그램을 받게될 사람에게 그대로 양도해 주어야 합니다. 이 경우, 프로그램의 원시 코드를 함께 제공하거나 원시 코드를 구할 수 있는 방법을 확실히 알려주어야 하고 이러한 모든 사항들을 사용자들이 분명히 알 수 있도록 명시해야 합니다. + +자유 소프트웨어 재단은 다음과 같은 두 가지 단계를 통해서 사용자들을 권리를 보호합니다. (1) 소프트웨어에 저작권을 설정합니다. (2) 저작권의 양도에 관한 실정법에 의해서 유효한 법률적 효력을 갖는 GPL을 통해 소프트웨어를 복제하거나 개작 및 배포할 수 있는 권리를 사용자들에게 부여합니다. + +자유 소프트웨어를 사용하는 사람들은 반복적인 재배포 과정을 통해 소프트웨어 자체에 수정과 변형이 일어날 수도 있으며, 이는 최초의 저작자가 만든 소프트웨어가 갖고 있는 문제가 아닐 수 있다는 개연성을 인식하고 있어야 합니다. 우리는 개작과 재배포 과정에서 다른 사람에 의해 발생된 문제로 인해 프로그램 원저작자들의 신망이 훼손되는 것을 원하지 않습니다. GPL에 자유 소프트웨어에 대한 어떠한 형태의 보증도 규정하지 않는 이유는 이러한 점들이 고려되었기 때문이며, 이는 프로그램 원저작자와 자유 소프트웨어 재단의 자유로운 활동을 보장하는 현실적인 수단이기도 합니다. + +특허 제도는 자유 소프트웨어의 발전을 위협하는 요소일 수밖에 없습니다. 자유 프로그램을 재배포하는 사람들이 개별적으로 특허를 취득하게 되면, 결과적으로 그 프로그램이 독점 소프트웨어가 될 가능성이 있습니다. 자유 소프트웨어 재단은 이러한 문제에 대처하기 위해서 어떠한 특허에 대해서도 그 사용 권리를 모든 사람들(이하, ``공중(公衆)''이라고 칭합니다.)에게 자유롭게 허용하는 경우에 한해서만 자유 소프트웨어와 함께 사용할 수 있다는 것을 명확히 밝히고 있습니다. + +복제(copying)와 개작(modification) 및 배포(distribution)에 관련된 구체적인 조건과 규정은 다음과 같습니다. + + +복제와 개작 및 배포에 관한 조건과 규정 + +제 0 조. 본 허가서는 GNU 일반 공중 사용 허가서의 규정에 따라 배포될 수 있다는 사항이 저작권자에 의해서 명시된 모든 컴퓨터 프로그램 저작물에 대해서 동일하게 적용됩니다. 컴퓨터 프로그램 저작물(이하, ``프로그램''이라고 칭합니다.)이란 특정한 결과를 얻기 위해서 컴퓨터 등의 정보 처리 능력을 가진 장치(이하, ``컴퓨터''라고 칭합니다.) 내에서 직접 또는 간접으로 사용되는 일련의 지시 및 명령으로 표현된 창작물을 의미하고, ``2차적 프로그램''이란 전술한 프로그램 자신 또는 저작권법의 규정에 따라 프로그램의 전부 또는 상당 부분을 원용하거나 다른 언어로의 번역을 포함할 수 있는 개작 과정을 통해서 창작된 새로운 프로그램과 이와 관련된 저작물을 의미합니다. (이후로 다른 언어로의 번역은 별다른 제한없이 개작의 범위에 포함되는 것으로 간주합니다.) ``피양도자''란 GPL의 규정에 따라 프로그램을 양도받은 사람을 의미하고, ``원(原)프로그램''이란 프로그램을 개작하거나 2차적 프로그램을 만들기 위해서 사용된 최초의 프로그램을 의미합니다. + +본 허가서는 프로그램에 대한 복제와 개작 그리고 배포 행위에 대해서만 적용됩니다. 따라서 프로그램을 실행시키는 행위에 대한 제한은 없습니다. 프로그램의 결과물(output)에는, 그것이 프로그램을 실행시켜서 생성된 것인지 아닌지의 여부에 상관없이 결과물의 내용이 원프로그램으로부터 파생된 2차적 프로그램을 구성했을 때에 한해서 본 허가서의 규정들이 적용됩니다. 2차적 프로그램의 구성 여부는 2차적 프로그램 안에서의 원프로그램의 역할을 토대로 판단합니다. + +제 1 조. 적절한 저작권 표시와 프로그램에 대한 보증이 제공되지 않는다는 사실을 각각의 복제물에 명시하는 한, 피양도자는 프로그램의 원시 코드를 자신이 양도받은 상태 그대로 어떠한 매체를 통해서도 복제하고 배포할 수 있습니다. 복제와 배포가 이루어 질 때는 본 허가서와 프로그램에 대한 보증이 제공되지 않는다는 사실에 대해서 언급되었던 모든 내용을 그대로 유지시켜야 하며, 영문판 GPL을 함께 제공해야 합니다. + +배포자는 복제물을 물리적으로 인도하는데 소요된 비용을 청구할 수 있으며, 선택 사항으로 독자적인 유료 보증을 설정할 수 있습니다. + +제 2 조. 피양도자는 자신이 양도받은 프로그램의 전부나 일부를 개작할 수 있으며, 이를 통해서 2차적 프로그램을 창작할 수 있습니다. 개작된 프로그램이나 창작된 2차적 프로그램은 다음의 사항들을 모두 만족시키는 조건에 한해서, 제1조의 규정에 따라 또다시 복제되고 배포될 수 있습니다. + +제 1 항. 파일을 개작할 때는 파일을 개작한 사실과 그 날짜를 파일 안에 명시해야 합니다. + +제 2 항. 배포하거나 공표하려는 저작물의 전부 또는 일부가 양도받은 프로그램으로부터 파생된 것이라면, 저작물 전체에 대한 사용 권리를 본 허가서의 규정에 따라 공중에게 무상으로 허용해야 합니다. + +제 3 항. 개작된 프로그램의 일반적인 실행 형태가 대화형 구조로 명령어를 읽어 들이는 방식을 취하고 있을 경우에는, 적절한 저작권 표시와 프로그램에 대한 보증이 제공되지 않는다는 사실, (별도의 보증을 설정한 경우라면 해당 내용) 그리고 양도받은 프로그램을 본 규정에 따라 재배포할 수 있다는 사실과 GPL 사본을 참고할 수 있는 방법이 함께 포함된 문구가 프로그램이 대화형 구조로 평이하게 실행된 직후에 화면 또는 지면으로 출력되도록 작성되어야 합니다. (예외 규정: 양도받은 프로그램이 대화형 구조를 갖추고 있다 하더라도 통상적인 실행 환경에서 전술한 사항들이 출력되지 않는 형태였을 경우에는 이를 개작한 프로그램 또한 관련 사항들을 출력시키지 않아도 무방합니다.) + +위의 조항들은 개작된 프로그램 전체에 적용됩니다. 만약, 개작된 프로그램에 포함된 특정 부분이 원프로그램으로부터 파생된 것이 아닌 별도의 독립 저작물로 인정될 만한 상당한 이유가 있을 경우에는 해당 저작물의 개별적인 배포에는 본 허가서의 규정들이 적용되지 않습니다. 그러나 이러한 저작물이 2차적 프로그램의 일부로서 함께 배포된다면 개별적인 저작권과 배포 기준에 상관없이 저작물 모두에 본 허가서가 적용되어야 하며, 전체 저작물에 대한 사용 권리는 공중에게 무상으로 양도됩니다. + +이러한 규정은 개별적인 저작물에 대한 저작자의 권리를 침해하거나 인정하지 않으려는 것이 아니라, 원프로그램으로부터 파생된 2차적 프로그램이나 수집 저작물의 배포를 일관적으로 규제할 수 있는 권리를 행사하기 위한 것입니다. + +원프로그램이나 원프로그램으로부터 파생된 2차적 프로그램을 이들로부터 파생되지 않은 다른 저작물과 함께 단순히 저장하거나 배포할 목적으로 동일한 매체에 모아 놓은 집합물의 경우에는, 원프로그램으로부터 파생되지 않은 다른 저작물에는 본 허가서의 규정들이 적용되지 않습니다. + +제 3 조. 피양도자는 다음 중 하나의 항목을 만족시키는 조건에 한해서 제1조와 제2조의 규정에 따라 프로그램(또는 제2조에서 언급된 2차적 프로그램)을 목적 코드(object code)나 실행물(executable form)의 형태로 복제하고 배포할 수 있습니다. + +제 1 항. 목적 코드나 실행물에 상응하는 컴퓨터가 인식할 수 있는 완전한 원시 코드를 함께 제공해야 합니다. 원시 코드는 제1조와 제2조의 규정에 따라 배포될 수 있어야 하며, 소프트웨어의 교환을 위해서 일반적으로 사용되는 매체를 통해 제공되어야 합니다. + +제 2 항. 배포에 필요한 최소한의 비용만을 받고 목적 코드나 실행물에 상응하는 완전한 원시 코드를 배포하겠다는, 최소한 3년간 유효한 약정서를 함께 제공해야 합니다. 이 약정서는 약정서를 갖고 있는 어떠한 사람에 대해서도 유효해야 합니다. 원시 코드는 컴퓨터가 인식할 수 있는 형태여야 하고 제1조와 제2조의 규정에 따라 배포될 수 있어야 하며, 소프트웨어의 교환을 위해서 일반적으로 사용되는 매체를 통해 제공되어야 합니다. + +제 3 항. 목적 코드나 실행물에 상응하는 원시 코드를 배포하겠다는 약정에 대해서 자신이 양도받은 정보를 함께 제공해야 합니다. (제3항은 위의 제2항에 따라 원시 코드를 배포하겠다는 약정을 프로그램의 목적 코드나 실행물과 함께 제공 받았고, 동시에 비상업적인 배포를 하고자 할 경우에 한해서만 허용됩니다.) + +저작물에 대한 원시 코드란 해당 저작물을 개작하기에 적절한 형식을 의미합니다. 실행물에 대한 완전한 원시 코드란 실행물에 포함된 모든 모듈들의 원시 코드와 이와 관련된 인터페이스 정의 파일 모두, 그리고 실행물의 컴파일과 설치를 제어하는데 사용된 스크립트 전부를 의미합니다. 그러나 특별한 예외의 하나로서, 실행물이 실행될 운영체제의 주요 부분(컴파일러나 커널 등)과 함께 (원시 코드나 바이너리의 형태로) 일반적으로 배포되는 구성 요소들은 이러한 구성 요소 자체가 실행물에 수반되지 않는 한 원시 코드의 배포 대상에서 제외되어도 무방합니다. + +목적 코드나 실행물을 지정한 장소로부터 복제해 갈 수 있게 하는 방식으로 배포할 경우, 동일한 장소로부터 원시 코드를 복제할 수 있는 동등한 접근 방법을 제공한다면 이는 원시 코드를 목적 코드와 함께 복제되도록 설정하지 않았다고 하더라도 원시 코드를 배포하는 것으로 간주됩니다. + +제 4 조. 본 허가서에 의해 명시적으로 이루어 지지 않는 한 프로그램에 대한 복제와 개작 및 하위 허가권 설정과 배포가 성립될 수 없습니다. 이와 관련된 어떠한 행위도 무효이며 본 허가서가 보장한 권리는 자동으로 소멸됩니다. 그러나 본 허가서의 규정에 따라 프로그램의 복제물이나 권리를 양도받았던 제3자는 본 허가서의 규정들을 준수하는 한, 배포자의 권리 소멸에 관계없이 사용상의 권리를 계속해서 유지할 수 있습니다. + +제 5 조. 본 허가서는 서명이나 날인이 수반되는 형식을 갖고 있지 않기 때문에 피양도자가 본 허가서의 내용을 반드시 받아들여야 할 필요는 없습니다. 그러나 프로그램이나 프로그램에 기반한 2차적 프로그램에 대한 개작 및 배포를 허용하는 것은 본 허가서에 의해서만 가능합니다. 만약 본 허가서에 동의하지 않을 경우에는 이러한 행위들이 법률적으로 금지됩니다. 따라서 프로그램(또는 프로그램에 기반한 2차적 프로그램)을 개작하거나 배포하는 행위는 이에 따른 본 허가서의 내용에 동의한다는 것을 의미하며, 복제와 개작 및 배포에 관한 본 허가서의 조건과 규정들을 모두 받아들이겠다는 의미로 간주됩니다. + +제 6 조. 피양도자에 의해서 프로그램(또는 프로그램에 기반한 2차적 프로그램)이 반복적으로 재배포될 경우, 각 단계에서의 피양도자는 본 허가서의 규정에 따른 프로그램의 복제와 개작 및 배포에 대한 권리를 최초의 양도자로부터 양도받은 것으로 자동적으로 간주됩니다. 프로그램(또는 프로그램에 기반한 2차적 프로그램)을 배포할 때는 피양도자의 권리의 행사를 제한할 수 있는 어떠한 사항도 추가할 수 없습니다. 그러나 피양도자에게, 재배포가 일어날 시점에서의 제3의 피양도자에게 본 허가서를 준수하도록 강제할 책임은 부과되지 않습니다. + +제 7 조. 법원의 판결이나 특허권 침해에 대한 주장 또는 특허 문제에 국한되지 않은 그밖의 이유들로 인해서 본 허가서의 규정에 배치되는 사항이 발생한다 하더라도 그러한 사항이 선행하거나 본 허가서의 조건과 규정들이 면제되는 것은 아닙니다. 따라서 법원의 명령이나 합의 등에 의해서 본 허가서에 위배되는 사항들이 발생한 상황이라도 양측 모두를 만족시킬 수 없다면 프로그램은 배포될 수 없습니다. 예를 들면, 특정한 특허 관련 허가가 프로그램의 복제물을 직접 또는 간접적인 방법으로 양도받은 임의의 제3자에게 해당 프로그램을 무상으로 재배포할 수 있게 허용하지 않는다면, 그러한 허가와 본 사용 허가를 동시에 만족시키면서 프로그램을 배포할 수 있는 방법은 없습니다. + +본 조항은 특정한 상황에서 본 조항의 일부가 유효하지 않거나 적용될 수 없을 경우에도 본 조항의 나머지 부분들을 적용하기 위한 의도로 만들어 졌습니다. 따라서 그 이외의 상황에서는 본 조항을 전체적으로 적용하면 됩니다. + +본 조항의 목적은 특허나 저작권 침해 등의 행위를 조장하거나 해당 권리를 인정하지 않으려는 것이 아니라, GPL을 통해서 구현되어 있는 자유 소프트웨어의 배포 체계를 통합적으로 보호하기 위한 것입니다. 많은 사람들이 배포 체계에 대한 신뢰있는 지원을 계속해 줌으로써 소프트웨어의 다양한 분야에 많은 공헌을 해 주었습니다. 소프트웨어를 어떠한 배포 체계로 배포할 것인가를 결정하는 것은 전적으로 저작자와 기증자들의 의지에 달려있는 것이지, 일반 사용자들이 강요할 수 있는 문제는 아닙니다. + +본 조항은 본 허가서의 다른 조항들에서 무엇이 중요하게 고려되어야 하는 지를 명확하게 설명하기 위한 목적으로 만들어진 것입니다. + +제 8 조. 특허나 저작권이 설정된 인터페이스로 인해서 특정 국가에서 프로그램의 배포와 사용이 함께 또는 개별적으로 제한되어 있는 경우, 본 사용 허가서를 프로그램에 적용한 최초의 저작권자는 문제가 발생하지 않는 국가에 한해서 프로그램을 배포한다는 배포상의 지역적 제한 조건을 명시적으로 설정할 수 있으며, 이러한 사항은 본 허가서의 일부로 간주됩니다. + +제 9 조. 자유 소프트웨어 재단은 때때로 본 사용 허가서의 개정판이나 신판을 공표할 수 있습니다. 새롭게 공표될 판은 당면한 문제나 현안을 처리하기 위해서 세부적인 내용에 차이가 발생할 수 있지만, 그 근본 정신에는 변함이 없을 것입니다. + +각각의 판들은 판번호를 사용해서 구별됩니다. 특정한 판번호와 그 이후 판을 따른다는 사항이 명시된 프로그램에는 해당 판이나 그 이후에 발행된 어떠한 판을 선택해서 적용해도 무방하고, 판번호를 명시하고 있지 않은 경우에는 자유 소프트웨어 재단이 공표한 어떠한 판번호의 판을 적용해도 무방합니다. + +제 10 조. 프로그램의 일부를 본 허가서와 배포 기준이 다른 자유 프로그램과 함께 결합하고자 할 경우에는 해당 프로그램의 저작자로부터 서면 승인을 받아야 합니다. 자유 소프트웨어 재단이 저작권을 갖고 있는 소프트웨어의 경우에는 자유 소프트웨어 재단의 승인을 얻어야 합니다. 우리는 이러한 요청을 수락하기 위해서 때때로 예외 기준을 만들기도 합니다. 자유 소프트웨어 재단은 일반적으로 자유 소프트웨어의 2차적 저작물들을 모두 자유로운 상태로 유지시키려는 목적과 소프트웨어의 공유와 재활용을 증진시키려는 두가지 목적을 기준으로 승인 여부를 결정할 것입니다. + +보증의 결여 (제11조, 제12조) + +제 11 조. 본 허가서를 따르는 프로그램은 무상으로 양도되기 때문에 관련 법률이 허용하는 한도 내에서 어떠한 형태의 보증도 제공되지 않습니다. 프로그램의 저작권자와 배포자가 공동 또는 개별적으로 별도의 보증을 서면으로 제공할 때를 제외하면, 특정한 목적에 대한 프로그램의 적합성이나 상업성 여부에 대한 보증을 포함한 어떠한 형태의 보증도 명시적이나 묵시적으로 설정되지 않은 ``있는 그대로의'' 상태로 이 프로그램을 배포합니다. 프로그램과 프로그램의 실행에 따라 발생할 수 있는 모든 위험은 피양도자에게 인수되며 이에 따른 보수 및 복구를 위한 제반 경비 또한 피양도자가 모두 부담해야 합니다. + +제 12 조. 저작권자나 배포자가 프로그램의 손상 가능성을 사전에 알고 있었다 하더라도 발생된 손실이 관련 법규에 의해 보호되고 있거나 이에 대한 별도의 서면 보증이 설정된 경우가 아니라면, 저작권자나 프로그램을 원래의 상태 또는 개작한 상태로 제공한 배포자는 프로그램의 사용이나 비작동으로 인해 발생된 손실이나 프로그램 자체의 손실에 대해 책임지지 않습니다. 이러한 면책 조건은 사용자나 제3자가 프로그램을 조작함으로써 발생된 손실이나 다른 소프트웨어와 프로그램을 함께 동작시키는 것으로 인해서 발생된 데이터의 상실 및 부정확한 산출 결과에만 국한되는 것이 아닙니다. 발생된 손실의 일반성이나 특수성 뿐 아니라 원인의 우발성 및 필연성도 전혀 고려되지 않습니다. + +복제와 개작 및 배포에 관한 조건과 규정의 끝. + + + +----- GPL 원문 -------------------------------------------------------- + +GNU GENERAL PUBLIC LICENSE +Version 2, June 1991 + +Copyright (C) 1989, 1991 Free Software Foundation, Inc. +59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. + +Preamble +The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. + +When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. + +To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. + +For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. + +We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. + +Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. + +Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. + +The precise terms and conditions for copying, distribution and modification follow. + +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION +0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. + +1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. + +You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. + +2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: + + +a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. + +b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. + +c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) +These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. + +3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: + +a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, + +b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, + +c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) +The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. + +If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. + +4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. + +5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. + +6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. + +7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. + +This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. + +8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. + +9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. + +10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. + +NO WARRANTY + +11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + + +END OF TERMS AND CONDITIONS + +----- 끝 -------------------------------------------------------- diff --git a/install/sql_gnuboard4.sql b/install/gnuboard4s.sql similarity index 66% rename from install/sql_gnuboard4.sql rename to install/gnuboard4s.sql index bccdda938..5a4a5c6db 100644 --- a/install/sql_gnuboard4.sql +++ b/install/gnuboard4s.sql @@ -1,43 +1,25 @@ +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_auth` +-- - - - - - - - - - - - - - - - - - - - -DROP TABLE IF EXISTS `$g4[auth_table]`; - - -CREATE TABLE `$g4[auth_table]` ( +DROP TABLE IF EXISTS `g4s_auth`; +CREATE TABLE IF NOT EXISTS `g4s_auth` ( `mb_id` varchar(255) NOT NULL default '', `au_menu` varchar(20) NOT NULL default '', `au_auth` set('r','w','d') NOT NULL default '', PRIMARY KEY (`mb_id`,`au_menu`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_board` +-- - - - -DROP TABLE IF EXISTS `$g4[board_table]`; - - -CREATE TABLE `$g4[board_table]` ( +DROP TABLE IF EXISTS `g4s_board`; +CREATE TABLE IF NOT EXISTS `g4s_board` ( `bo_table` varchar(20) NOT NULL default '', `gr_id` varchar(255) NOT NULL default '', `bo_subject` varchar(255) NOT NULL default '', @@ -125,23 +107,22 @@ CREATE TABLE `$g4[board_table]` ( `bo_9` varchar(255) NOT NULL default '', `bo_10` varchar(255) NOT NULL default '', PRIMARY KEY (`bo_table`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_board_file` +-- - - - -DROP TABLE IF EXISTS `$g4[board_table]_file`; - - -CREATE TABLE `$g4[board_table]_file` ( +DROP TABLE IF EXISTS `g4s_board_file`; +CREATE TABLE IF NOT EXISTS `g4s_board_file` ( `bo_table` varchar(20) NOT NULL default '', `wr_id` int(11) NOT NULL default '0', `bf_no` int(11) NOT NULL default '0', `bf_source` varchar(255) NOT NULL default '', `bf_file` varchar(255) NOT NULL default '', - `bf_download` varchar(255) NOT NULL default '', + `bf_download` int(11) NOT NULL, `bf_content` text NOT NULL, `bf_filesize` int(11) NOT NULL default '0', `bf_width` int(11) NOT NULL default '0', @@ -149,17 +130,16 @@ CREATE TABLE `$g4[board_table]_file` ( `bf_type` tinyint(4) NOT NULL default '0', `bf_datetime` datetime NOT NULL default '0000-00-00 00:00:00', PRIMARY KEY (`bo_table`,`wr_id`,`bf_no`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_board_good` +-- - - - -DROP TABLE IF EXISTS `$g4[board_table]_good`; - - -CREATE TABLE `$g4[board_table]_good` ( +DROP TABLE IF EXISTS `g4s_board_good`; +CREATE TABLE IF NOT EXISTS `g4s_board_good` ( `bg_id` int(11) NOT NULL auto_increment, `bo_table` varchar(20) NOT NULL default '', `wr_id` int(11) NOT NULL default '0', @@ -168,17 +148,16 @@ CREATE TABLE `$g4[board_table]_good` ( `bg_datetime` datetime NOT NULL default '0000-00-00 00:00:00', PRIMARY KEY (`bg_id`), UNIQUE KEY `fkey1` (`bo_table`,`wr_id`,`mb_id`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_board_new` +-- - - - -DROP TABLE IF EXISTS `$g4[board_table]_new`; - - -CREATE TABLE `$g4[board_table]_new` ( +DROP TABLE IF EXISTS `g4s_board_new`; +CREATE TABLE IF NOT EXISTS `g4s_board_new` ( `bn_id` int(11) NOT NULL auto_increment, `bo_table` varchar(20) NOT NULL default '', `wr_id` int(11) NOT NULL default '0', @@ -187,17 +166,16 @@ CREATE TABLE `$g4[board_table]_new` ( `mb_id` varchar(20) NOT NULL default '', PRIMARY KEY (`bn_id`), KEY `mb_id` (`mb_id`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_config` +-- - - - -DROP TABLE IF EXISTS `$g4[config_table]`; - - -CREATE TABLE `$g4[config_table]` ( +DROP TABLE IF EXISTS `g4s_config`; +CREATE TABLE IF NOT EXISTS `g4s_config` ( `cf_title` varchar(255) NOT NULL default '', `cf_admin` varchar(255) NOT NULL default '', `cf_use_point` tinyint(4) NOT NULL default '0', @@ -297,17 +275,16 @@ CREATE TABLE `$g4[config_table]` ( `cf_8` varchar(255) NOT NULL default '', `cf_9` varchar(255) NOT NULL default '', `cf_10` varchar(255) NOT NULL default '' -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_group` +-- - - - -DROP TABLE IF EXISTS `$g4[group_table]`; - - -CREATE TABLE `$g4[group_table]` ( +DROP TABLE IF EXISTS `g4s_group`; +CREATE TABLE IF NOT EXISTS `g4s_group` ( `gr_id` varchar(10) NOT NULL default '', `gr_subject` varchar(255) NOT NULL default '', `gr_admin` varchar(255) NOT NULL default '', @@ -333,17 +310,16 @@ CREATE TABLE `$g4[group_table]` ( `gr_9` varchar(255) NOT NULL default '', `gr_10` varchar(255) NOT NULL default '', PRIMARY KEY (`gr_id`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_group_member` +-- - - - -DROP TABLE IF EXISTS `$g4[group_member_table]`; - - -CREATE TABLE `$g4[group_member_table]` ( +DROP TABLE IF EXISTS `g4s_group_member`; +CREATE TABLE IF NOT EXISTS `g4s_group_member` ( `gm_id` int(11) NOT NULL auto_increment, `gr_id` varchar(255) NOT NULL default '', `mb_id` varchar(255) NOT NULL default '', @@ -351,34 +327,32 @@ CREATE TABLE `$g4[group_member_table]` ( PRIMARY KEY (`gm_id`), KEY `gr_id` (`gr_id`), KEY `mb_id` (`mb_id`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_login` +-- - - - -DROP TABLE IF EXISTS `$g4[login_table]`; - - -CREATE TABLE `$g4[login_table]` ( +DROP TABLE IF EXISTS `g4s_login`; +CREATE TABLE IF NOT EXISTS `g4s_login` ( `lo_ip` varchar(255) NOT NULL default '', `mb_id` varchar(255) NOT NULL default '', `lo_datetime` datetime NOT NULL default '0000-00-00 00:00:00', `lo_location` text NOT NULL, `lo_url` text NOT NULL, PRIMARY KEY (`lo_ip`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_mail` +-- - - - -DROP TABLE IF EXISTS `$g4[mail_table]`; - - -CREATE TABLE `$g4[mail_table]` ( +DROP TABLE IF EXISTS `g4s_mail`; +CREATE TABLE IF NOT EXISTS `g4s_mail` ( `ma_id` int(11) NOT NULL auto_increment, `ma_subject` varchar(255) NOT NULL default '', `ma_content` mediumtext NOT NULL, @@ -386,17 +360,16 @@ CREATE TABLE `$g4[mail_table]` ( `ma_ip` varchar(255) NOT NULL default '', `ma_last_option` text NOT NULL, PRIMARY KEY (`ma_id`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_member` +-- - - - -DROP TABLE IF EXISTS `$g4[member_table]`; - - -CREATE TABLE `$g4[member_table]` ( +DROP TABLE IF EXISTS `g4s_member`; +CREATE TABLE IF NOT EXISTS `g4s_member` ( `mb_no` int(11) NOT NULL auto_increment, `mb_id` varchar(255) NOT NULL default '', `mb_password` varchar(255) NOT NULL default '', @@ -449,17 +422,16 @@ CREATE TABLE `$g4[member_table]` ( UNIQUE KEY `mb_id` (`mb_id`), KEY `mb_today_login` (`mb_today_login`), KEY `mb_datetime` (`mb_datetime`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_memo` +-- - - - -DROP TABLE IF EXISTS `$g4[memo_table]`; - - -CREATE TABLE `$g4[memo_table]` ( +DROP TABLE IF EXISTS `g4s_memo`; +CREATE TABLE IF NOT EXISTS `g4s_memo` ( `me_id` int(11) NOT NULL default '0', `me_recv_mb_id` varchar(255) NOT NULL default '', `me_send_mb_id` varchar(255) NOT NULL default '', @@ -467,17 +439,99 @@ CREATE TABLE `$g4[memo_table]` ( `me_read_datetime` datetime NOT NULL default '0000-00-00 00:00:00', `me_memo` text NOT NULL, PRIMARY KEY (`me_id`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_oneboard` +-- +DROP TABLE IF EXISTS `g4s_oneboard`; +CREATE TABLE IF NOT EXISTS `g4s_oneboard` ( + `ob_table` varchar(20) NOT NULL, + `ob_subject` varchar(255) NOT NULL, + `ob_admin` varchar(255) NOT NULL, + `ob_skin` varchar(255) NOT NULL, + `ob_write_level` tinyint(4) NOT NULL, + `ob_upload_level` tinyint(4) NOT NULL, + `ob_use_dhtml_editor` tinyint(4) NOT NULL, + `ob_use_email` tinyint(4) NOT NULL, + `ob_table_width` smallint(6) NOT NULL, + `ob_subject_len` smallint(6) NOT NULL, + `ob_page_rows` smallint(6) NOT NULL, + `ob_image_width` smallint(6) NOT NULL, + `ob_image_head` varchar(255) NOT NULL, + `ob_image_tail` varchar(255) NOT NULL, + `ob_include_head` varchar(255) NOT NULL, + `ob_include_tail` varchar(255) NOT NULL, + `ob_content_head` text NOT NULL, + `ob_content_tail` text NOT NULL, + `ob_insert_content` text NOT NULL, + `ob_1_subj` varchar(255) NOT NULL, + `ob_2_subj` varchar(255) NOT NULL, + `ob_3_subj` varchar(255) NOT NULL, + `ob_4_subj` varchar(255) NOT NULL, + `ob_5_subj` varchar(255) NOT NULL, + `ob_6_subj` varchar(255) NOT NULL, + `ob_7_subj` varchar(255) NOT NULL, + `ob_8_subj` varchar(255) NOT NULL, + `ob_9_subj` varchar(255) NOT NULL, + `ob_10_subj` varchar(255) NOT NULL, + `ob_1` varchar(255) NOT NULL, + `ob_2` varchar(255) NOT NULL, + `ob_3` varchar(255) NOT NULL, + `ob_4` varchar(255) NOT NULL, + `ob_5` varchar(255) NOT NULL, + `ob_6` varchar(255) NOT NULL, + `ob_7` varchar(255) NOT NULL, + `ob_8` varchar(255) NOT NULL, + `ob_9` varchar(255) NOT NULL, + `ob_10` varchar(255) NOT NULL, + PRIMARY KEY (`ob_table`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_one_basic` +-- -DROP TABLE IF EXISTS `$g4[point_table]`; +DROP TABLE IF EXISTS `g4s_one_basic`; +CREATE TABLE IF NOT EXISTS `g4s_one_basic` ( + `on_id` int(11) NOT NULL auto_increment, + `mb_no` int(11) NOT NULL, + `on_subject` varchar(255) NOT NULL default '', + `on_question` mediumtext NOT NULL, + `on_answer` mediumtext NOT NULL, + `on_qfile` varchar(255) NOT NULL, + `on_qsource` varchar(255) NOT NULL, + `on_afile` varchar(255) NOT NULL, + `on_asource` varchar(255) NOT NULL, + `on_qdatetime` datetime NOT NULL, + `on_adatetime` datetime NOT NULL, + `on_1` text NOT NULL, + `on_2` text NOT NULL, + `on_3` text NOT NULL, + `on_4` text NOT NULL, + `on_5` text NOT NULL, + `on_6` text NOT NULL, + `on_7` text NOT NULL, + `on_8` text NOT NULL, + `on_9` text NOT NULL, + `on_10` text NOT NULL, + PRIMARY KEY (`on_id`), + KEY `mb_no` (`mb_no`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- -CREATE TABLE `$g4[point_table]` ( +-- +-- Table structure for table `g4s_point` +-- + +DROP TABLE IF EXISTS `g4s_point`; +CREATE TABLE IF NOT EXISTS `g4s_point` ( `po_id` int(11) NOT NULL auto_increment, `mb_id` varchar(20) NOT NULL default '', `po_datetime` datetime NOT NULL default '0000-00-00 00:00:00', @@ -488,17 +542,16 @@ CREATE TABLE `$g4[point_table]` ( `po_rel_action` varchar(255) NOT NULL default '', PRIMARY KEY (`po_id`), KEY `index1` (`mb_id`,`po_rel_table`,`po_rel_id`,`po_rel_action`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_poll` +-- - - - -DROP TABLE IF EXISTS `$g4[poll_table]`; - - -CREATE TABLE `$g4[poll_table]` ( +DROP TABLE IF EXISTS `g4s_poll`; +CREATE TABLE IF NOT EXISTS `g4s_poll` ( `po_id` int(11) NOT NULL auto_increment, `po_subject` varchar(255) NOT NULL default '', `po_poll1` varchar(255) NOT NULL default '', @@ -526,17 +579,16 @@ CREATE TABLE `$g4[poll_table]` ( `po_ips` mediumtext NOT NULL, `mb_ids` text NOT NULL, PRIMARY KEY (`po_id`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_poll_etc` +-- - - - -DROP TABLE IF EXISTS `$g4[poll_etc_table]`; - - -CREATE TABLE `$g4[poll_etc_table]` ( +DROP TABLE IF EXISTS `g4s_poll_etc`; +CREATE TABLE IF NOT EXISTS `g4s_poll_etc` ( `pc_id` int(11) NOT NULL default '0', `po_id` int(11) NOT NULL default '0', `mb_id` varchar(255) NOT NULL default '', @@ -544,34 +596,32 @@ CREATE TABLE `$g4[poll_etc_table]` ( `pc_idea` varchar(255) NOT NULL default '', `pc_datetime` datetime NOT NULL default '0000-00-00 00:00:00', PRIMARY KEY (`pc_id`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_popular` +-- - - - -DROP TABLE IF EXISTS `$g4[popular_table]`; - - -CREATE TABLE `$g4[popular_table]` ( +DROP TABLE IF EXISTS `g4s_popular`; +CREATE TABLE IF NOT EXISTS `g4s_popular` ( `pp_id` int(11) NOT NULL auto_increment, `pp_word` varchar(50) NOT NULL default '', `pp_date` date NOT NULL default '0000-00-00', `pp_ip` varchar(50) NOT NULL default '', PRIMARY KEY (`pp_id`), UNIQUE KEY `index1` (`pp_date`,`pp_word`,`pp_ip`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_scrap` +-- - - - -DROP TABLE IF EXISTS `$g4[scrap_table]`; - - -CREATE TABLE `$g4[scrap_table]` ( +DROP TABLE IF EXISTS `g4s_scrap`; +CREATE TABLE IF NOT EXISTS `g4s_scrap` ( `ms_id` int(11) NOT NULL auto_increment, `mb_id` varchar(255) NOT NULL default '', `bo_table` varchar(20) NOT NULL default '', @@ -579,34 +629,16 @@ CREATE TABLE `$g4[scrap_table]` ( `ms_datetime` datetime NOT NULL default '0000-00-00 00:00:00', PRIMARY KEY (`ms_id`), KEY `mb_id` (`mb_id`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_visit` +-- - - - -DROP TABLE IF EXISTS `$g4[token_table]`; - - -CREATE TABLE `$g4[token_table]` ( - `to_token` varchar(32) NOT NULL default '', - `to_datetime` datetime NOT NULL default '0000-00-00 00:00:00', - `to_ip` varchar(255) NOT NULL default '', - PRIMARY KEY (`to_token`), - KEY `to_datetime` (`to_datetime`), - KEY `to_ip` (`to_ip`) -) DEFAULT CHARSET=utf8; - - - - - - -DROP TABLE IF EXISTS `$g4[visit_table]`; - - -CREATE TABLE `$g4[visit_table]` ( +DROP TABLE IF EXISTS `g4s_visit`; +CREATE TABLE IF NOT EXISTS `g4s_visit` ( `vi_id` int(11) NOT NULL default '0', `vi_ip` varchar(255) NOT NULL default '', `vi_date` date NOT NULL default '0000-00-00', @@ -616,31 +648,82 @@ CREATE TABLE `$g4[visit_table]` ( PRIMARY KEY (`vi_id`), UNIQUE KEY `index1` (`vi_ip`,`vi_date`), KEY `index2` (`vi_date`) -) DEFAULT CHARSET=utf8; +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_visit_sum` +-- - - - -DROP TABLE IF EXISTS `$g4[visit_sum_table]`; - - -CREATE TABLE `$g4[visit_sum_table]` ( +DROP TABLE IF EXISTS `g4s_visit_sum`; +CREATE TABLE IF NOT EXISTS `g4s_visit_sum` ( `vs_date` date NOT NULL default '0000-00-00', `vs_count` int(11) NOT NULL default '0', PRIMARY KEY (`vs_date`), KEY `index1` (`vs_count`) -) DEFAULT CHARSET=utf8; - - - - - +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_write` +-- +DROP TABLE IF EXISTS `g4s_write`; +CREATE TABLE IF NOT EXISTS `g4s_write` ( + `wr_id` int(11) NOT NULL auto_increment, + `wr_num` int(11) NOT NULL default '0', + `wr_reply` varchar(10) NOT NULL default '', + `wr_parent` int(11) NOT NULL default '0', + `wr_is_comment` tinyint(4) NOT NULL default '0', + `wr_comment` int(11) NOT NULL default '0', + `wr_comment_reply` varchar(5) NOT NULL default '', + `ca_name` varchar(255) NOT NULL default '', + `wr_option` set('html1','html2','secret','mail') NOT NULL default '', + `wr_subject` varchar(255) NOT NULL default '', + `wr_content` text NOT NULL, + `wr_link1` text NOT NULL, + `wr_link2` text NOT NULL, + `wr_link1_hit` int(11) NOT NULL default '0', + `wr_link2_hit` int(11) NOT NULL default '0', + `wr_trackback` varchar(255) NOT NULL default '', + `wr_hit` int(11) NOT NULL default '0', + `wr_good` int(11) NOT NULL default '0', + `wr_nogood` int(11) NOT NULL default '0', + `mb_id` varchar(255) NOT NULL default '', + `wr_password` varchar(255) NOT NULL default '', + `wr_name` varchar(255) NOT NULL default '', + `wr_email` varchar(255) NOT NULL default '', + `wr_homepage` varchar(255) NOT NULL default '', + `wr_datetime` datetime NOT NULL default '0000-00-00 00:00:00', + `wr_last` varchar(19) NOT NULL default '', + `wr_ip` varchar(255) NOT NULL default '', + `wr_1` varchar(255) NOT NULL default '', + `wr_2` varchar(255) NOT NULL default '', + `wr_3` varchar(255) NOT NULL default '', + `wr_4` varchar(255) NOT NULL default '', + `wr_5` varchar(255) NOT NULL default '', + `wr_6` varchar(255) NOT NULL default '', + `wr_7` varchar(255) NOT NULL default '', + `wr_8` varchar(255) NOT NULL default '', + `wr_9` varchar(255) NOT NULL default '', + `wr_10` varchar(255) NOT NULL default '', + PRIMARY KEY (`wr_id`), + KEY `wr_num_reply_parent` (`wr_num`,`wr_reply`,`wr_parent`), + KEY `wr_is_comment` (`wr_is_comment`,`wr_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- +-- +-- Table structure for table `g4s_write` +-- +DROP TABLE IF EXISTS `g4s_unique`; +CREATE TABLE IF NOT EXISTS `g4s_uniqid` ( + `uq_id` bigint(20) unsigned NOT NULL, + PRIMARY KEY (`uq_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; +-- -------------------------------------------------------- \ No newline at end of file diff --git a/install/img/all_bg.gif b/install/img/all_bg.gif deleted file mode 100644 index 5edc81bc00602d8937a0aff32bbc087bc08a00c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6539 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 diff --git a/install/img/all_bg_01.gif b/install/img/all_bg_01.gif deleted file mode 100644 index 5240e7517873ea09c35f5703cc77ce4e84705001..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2093 zcmV+|2-5dQNk%w1VH5y~2ax~(x3{;wy}h`&xVpN!A^8LV00000EC2ui02Ba;2LJ;9 zoCl&3hs#b{O~U%9n+o%2X~u_TopWtz2#%|JvaMN?Y7FD1aO-wH`|WBk;ZQ~t8D2+L z(x+_Zp24W`)2k}4MW&Fu^)kiQvRMmFtEtp18|jA2rBbktypB8dQ$Ed)HCKn%VpmA$ zfrxU3_O>U;;n)WW0ocWuh)Efyd7$_R^d$MWiDqiasdm^&_w~8NN*dZT8i{J!R=TR1 z$*bFoyXXtr8f#lxTlu>@J7)+y`YKyIJlSkbt#G>=d_BneEZmK4ms~w=GlLTsHnivP)<7Qr6%%>{ zC+#A^jL0H(1c|bmMUwbNVtlFXq{@#o;jzpHv7|1EE&H*f2~cFtmP7gRq}cP|wUsc7 zmeXi5sZ4!9{WXQElW0_=ToqRJBNVIFtVX9w@|rT}&8KA9_B@KVrd+jG+X@t0R;u2v zUj>D=d&VgtxP6xvrt^2KVw_v!QcZg{Y3O72m2go_|X#D zeEIl?Ab`7R=N^Nn@JC;Qud%0JgXKAx3wqaqCn0tL<~JZQwQ2a@gdHOGA%P*1bDn$~ z_BWh;?Fq=8h5M0sB8(;~cwdb)zNd@4Sjt%8j~J>ros~Hf`J|RT0%>NK58@~$hjki}ot#RZDT9z%>Nuv6 zW$vjbnoCv}W}ASzd8DCyvUsDKcd{9%b6a{DCzp{jsVJp(TKeXr0crXrot-9HDU_iW zDk7^u__-#kpQ_qutE6UHs-&mlz$vYRI_m1Ex%N71v5VrFqOF+!61pj(ygKU>sI@}6 zEU?WQ_$;>3`nsa9xPF_VuBjU9DYBP>Yi+fCf|>1*vYNZ^yMO9??!5i-8!oZOmdkJydCHsa!8^b@X}%WUv9GrVZ=40iyWYF7!x_s1C&%lW zI&R1Uli4lFqPpCo!VRxnF~$W)Y%;%(o!qO5q&9pLOU;H!MWm_He*=j>gw%D-T{58>e zKP|J{b~6Nb*J%ISH_abQEi&FZ@4a}vYa5<&-JS&gE8}7RKi)RvM{`|y<6e7SP~n-6 zj=0TngFQIvbBkU&=@S92_~){xUNqf)WBzvRv|GNrp^(T$3ZamQ8q{H|cxXBsE)j=mjN=_=7{xj2af@X1qo4%Y#yXA>jzb(I z82PuzE($Mye1u^Y@i;>^B65>JETkt*Lq|tmOOk7BWFkd5tWT0slV^NkB4fD2Op-B> ztqh|j?N~EFQWA}~jAShTN6S6(@|BmAB@%=AvM-MEm$;PHDW7RXRWfsu%1m1do9RAG z<}Q@b>?9+boN`PkLh(7xg@*J0o&!~+L?g<|amI6<#dIerk@-l0#_XSm zJ18pUrcgtcl$s)S8XDQT(u?j>qy0=6NwcZTnldq^H>GDrD|%9!GSr|feJD^RNK}~~ z(xE}Eol0>EOnB;)Z$0JUPeW?dkq#B0MQv&&k;+x2I+LPU-AG602`{e>Gn!kC=~Z2- zPKUx2s%Qn8TH^}Qq&}5V;yfx_^VwEzF}1H+1*~BkO4F96GO#{1C0XGb#<@0@v1uhN zWFaY5x^~sF*0ktet?JmpK6bH()oW-Io7H8Sma=x`EJ{6F)fJxBucGy4X~X)~&fYb2 zv9%&7cU!)*7Idko1#S+9>(<$p)wM$Yy=`)T%iNv9mbJc}Xl;uN*5^7`u-F}~KdGxt zlScQef5m8T^ElqM+Sa__rJ7=2Yu36}7qPVM?s`|dUA}s^dehA>Xra4b>BbkinysgC z=_uL%`nRU*1;;vAFM#4IkXjv)--4D-0fKSuG6Wjx{Ux;VU>1uu=9FPqbV^I9b!pOkD%Af<{g48lFhk7{P z`Dbv-bM;<}*JpSCPtfQ~$()z5YTW_@0VkdFCAs%2*1fNJ|Np>(0uLRj{u4`zPUcw6 qzwkK0Yi-o}8*9o=zpdK;U_*tE-t6-)wp5+X+kOATjyZD~7_0%CwLo$J diff --git a/install/img/box_left.gif b/install/img/box_left.gif deleted file mode 100644 index 89c33cef9a32497699e39442e131d30f3fe4f6a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 104 zcmZ?wbhEHbWM&9qoX7wI|NsBLcKIBTRQ$=p$iTqNpaT*G$ulrnhNM)Se9aYIv+0uc z=BpLI`HCKyw>`;R_OxqL7We*5-p9Y@JpWPmeb@QloXsu^3M+J!rk_gtbn=ZT1A{dH DGkq;A diff --git a/install/img/box_line.gif b/install/img/box_line.gif deleted file mode 100644 index 7abe89348bf1a0b7fa904575ad1511b8e852bc29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96 zcmZ?wbhEHbG-6_6n8*ME|NsAQX=(wIia%Kx85o!ubU>mYc?KrKDg7%?zvW*%XUnbb u&G+{F=5KrCF|AQx$*WV_-fbw>9Q42%z$O4Fg|=LL+k3*RR)m;4 zIlp$&_1opNe)0R?t^7W<^iQf&yS~?ro^#Elv@`GKkK8JqSXfvvP3dXqTRHV08z0ty zF-?^VXfO%+R@*x4&@ml5I1!#u)IB_D{bAri0W+&&;IQ2nr16`pQLQ(AOcc({?eFia zzUtiB-llwLjLT`4vP^!OL_h9cS=KUf#HG}xWRyq$l~zEhgmclk7d`wpQ)K+=u4Ilr zsUNkfpFCuhNr>;XYndFJSl4{hZSbmH+Oy(L_HfFN?v3?zbyCji`i?TC%_XDU_f7fm z#KP*zigrlNjW?aWtBdl_+Rdvc=a)CmhPN7IGX-y_pL@}+8q@3dy=irEPA|Rha%$h% zduev<(=z_8SF)H*{j2!{lbTO{UXSZgAUB!Q`XotJlao_QVO@MCNzdQa80P&lD*Uy+ zwR=6K_qa`lg69v7*NiKaChed~Iq&j}pA5I?vZJ1L?3HP)gl?nP?MEM#+kG0W>6#F8 zEVvi?RWo6jT0O*?TnedVUQ8bLDerrf)nMY0-a54U;79w!EJymzho12j*fpwAM!&dg zMS9x=_h4sg>5pn;%l`I8>)(a*p^X-w>eao!UW{t3U6{F<$gs&8RPd|hH=}t+7hQfo z!dYI{@cAb3sFJg~xxMlC0;T@AOK}lnTJ>ey#mq6om^QDh%B`Kqsg;CDHabh+;w(Uk@*WBE! zaYpOV`m)CBeq(Ce`d`lZr$zeZ>`TeL4vg7|oUX!(9?RA#an~|~)c(JJ|7xf7wQ@Li zjem}rCRx9)w0c>tD!Q-o4dQW$7?_hD{0hy)sw^iy|uMP$R3!VnFO?79CfJ_b*Ep+ z>OU9NaxSX<45j%>%7E_sKDF3Ejd%TLDNPUG=P9`6Zfv?zWXLf&%YN41V zv_2RPC)W9|?f#)3YGF5gODvEWDU6k0%p|{Zf>3T-6-YZ5qmo9oc-%@HOmS5fPJ62VE zOKE<*vV6)oySNb1RBN8QQurY5pXQTobj~#6gHg~@K-s@Doha8|ot5RA%d9#s_blQ^zo01 z=|w@dwEiaCj%R*khkLbnjy-M(n*m|I+19Wl!oSpwlhbbsthR&P@y$?)#{QT%`YK`=f+kPu#p+OBcl>dgYX&CIJL2Z4p zv8|4dn)sFjB_ryLzgyXYOsjkBpsf&EX-JGSuDn&W(_Up+B5(KaASmFNh=sR#j%9Je zBway3pB8Mzb2^$B-yB~G^;++e1=a6K8y<`4V|(IWzsw27 z4h#h3b*TS(sZ_M0S=cM(16BHQEO)|{U3Gv={E=h4`}9YziOQ=mMVKVt?b`dwgC0FL z`jtO>?EdZ^?XmN4TN!r#oL8iqE@smVmZLFbkqU~OwkAn^*Y@VK61n?p(^U3g-y($@JA?7ylVr&;b%-SGcq@ zZ!W#rzu>6!GHfR8b6Q!|y&!(go^*Ki2B%)sL|M>1h;((#^D8;H$xlC}5z=QWu!Ua0 zvCp+BNq0uW=FIL?{+>8{V|9yI)*X6m{?3iHDUMUs+|>3rm!R$~*BjjZx660dlslTC z3ot*_z?Uz#ztZ7*8|u|t4POH{y@(KXrwXJsCq(&{?rPGY)~K;d+|*U~^+lu9TxEi#DbK z1m7825tTX`e7qM2c2gzWFc5!E*(bevbe@j!51{ioS=P-}5=DIoWC>w>%QfpBw2rIf zZpfz=W7uQo)UkUq7iO#4n2@L^^bC26FRfa9ocP=}U6qlhx?3Tu2^qN`86(YY_B-FC zPBmMeAyC2mQtW7-mm=al^majxpx9NQUh$Ub~eO`mknFJ-9WR$ID;i;c**_{seS$Yj;9RC)C8;T^B)T!ocG(`=sCKunW$-OCh zi5g;iUYN(7N*9k)grX@vR>Y*Yp0Vy)0nB_+5hu z#GRBeX7g%`Rfu&KgsZ<~+Y>hHurOuEAaPVfLJ6c$4j!QzFfLL)WZ|J0qccg35-(Th zG1z+Ke1Zc_Vr@3r7Sw2w1CVEgFEsC8|MogQV8nXi17eN5dPz!)EoD~Px|S4@P@FsI z-xu0uy5*TvymwzY>PY*&snxe_xl_s>!(3rkio0Sx2BfK9+}W4s6}egAB>cgz>n=qP z>d(Hf@?n_qFt9K~6fKQzwG_CF2zh0SjqsSU{1HJSU*bIFk?^kVr5z{-YAem%8YK!| zJ(DNq?-27$YrCI7Q5AkcoV2#F8u-!qGvBvk-hOvy@JE_Xei(Ye`U-2P>66O0#MA{# zjoo2JbkX-`4qzfArF*Ee$d@YnTLgNU|GdvvC+(cyC$SEK!E_y2K1QTZ`6v@47FMC3 z{`}?|jaeyo_0)^*CB{!S|aJ<){Cxp3M5ajC>5P!1+qMxk8oX_`b zPzhX-ajN(&-SuBLNiTVMRJ4K^;VQ(mRRZ~nI!+MOlXwa2ioMwWOb|3st~K>_`KsVa z?d=Bj<4EnU$|V&YAS^r+jie`SDTvt8yNF>#9LP;^VlD_f9{P~g zh`dFN#J`k6fot$wWlc89^oIk4iznCEti+&)?ygV_s%2{NL6&O}Q7)Z~*N{dP z08hXgWT>UD0{}QM1Qv=xr)0^=bb#DMhWNpgSSS(8;KRmK&nI!p}3q7 zToRCv4^>HmrU6h5=POtH;JFNVng&vzBanwfrVWKYV?aI)32+2_rg#9{EMlol!+Bv@Iek8UM0~9z_>}tI~KMW8ekOpm8GVF%jkF zj9P<7Iru@v@Q7kD*jRJed;xT72tAb)O{7N84567cNC<_OgNQkn1@WWs`VuIkS>Z2+ zVqO>=ml6z!K}1S&;Pq4};$dVy8M;XosHGzXh9gsl;I%Z=7)L;t1^cKG`!VZqA^QscGLOq2)_#6u4(!M+;DfxK{jx%U%g6M!utV76c4?ViAGx1(3HAV$QP`wtUl zEfa_Uula>nX0tJ*$PgC>&#Ns#r2+tQ!CQ$+Ma=RVVv!&5JnmRNB$hAytpH_~>V}K3 zA|}-m!ErQH8IHG>0nbk2p>W_w$%teEfIae3f&du54U@Ktx0gfn;6VH8{6a*KDkI2~ z4(QTB`q<;lM>1f$^M-3;R`hU5FT z<87b7hn^&Cl%zf!PMvb*?cPp!%)O9yX%p&QDk~YB=(i1up+Mm+iJe#^nE*2*ykGwU zY*@XI+7=MP@@?aJhzxr%5)7aU2yp}`*l;eLSDOR*K7-aKyf*t1)uWLPu0hwY!6j&D zwb{2^8u&3oAb=ylhk^6pe4Z0g)*AdgWQ11<$chf|5mCk^Al?^Zm;G*P3; zZ#SV-iKq&~;}K4N1ujCK_C=MG((_+Z#go~ZASXJS*BW3oqaU%*lRE{IF1%T|LSdUi z5u?Jd$%W$Oh2l}j0-#WpkR#=4??OOKZwva9L8WCmC;*ht;=@UNk7dDGI7mI$C0D~H zw}AB7ftc%n&5QdI_SglaO9lnu5u=*u4}{l~@?R17e6|b!G%|l2_c@&oGgbJx?1Hi) z!D1+ZVq`?3_-B@8kt&fNVgr~-JTD=E0?4SDX}$mqL>u^qQ2>jk6pOSK2JB`Fp>p!K z3#9)kNw}Ye{5Q>?nj;^TcoYl0!a|-!m7bMAvGBPGuHPH3eteLii*m=adxG8KTh0vL%5Iv~a7;q2rw$fGpyPX&O74iBQkx<_lL$mJAFc@GD! z(2i=wAQ^4oYb~%eeMBY>R?>#*v?(hvLi%1qPT@d3nxLXxNG1*hXJq`d2kBO*y3JQE zLaUm!sj^iB+vgT%(HbtX8VX(c!Q^V^1*20&iIfyzKcz&8kwaC0dK)*z0tg#IDRPe< z@CfuA5B*I>xUo`Zd|^W5nl1%^#U%+a31Q%F!xD82EQQZxsn7ibMVS2d0Q^(^0I4)4`6U zLBETzdv+~Paf6w}L6Xv-&R!j<1NGT6?bR~l?SPiMo7#n!T9OwX#R5Hhy%n|M@CM$Kg z{n&WNB05WHBrA1%u5x@~ANHC#!bw%rB7Q5(Yx{P6)Pw{!eKo4XLVRS6+7S6|a4e`j z3wDEb9YBqf;o}`l8ddQ6Emp5Q*)PMS@2pS1{_Rm2Fq#LQ(}n#;7G`xH2rb!P6r5B*Ns+)Mggf&0`rar%e- zd{N-MNB(qKpsWdF+Kw|#j)rQcAv$Tu$Utyp;KCJtcBO5j`9f_9U-_&i>}@CCKqucB z(xM-Ac614xls0KfaV%HJiA!l%EeRv0om5f zlMgLFSoX|-?W7>iA6*DeL!^-x7D-^fm<3tZFRC3gcCpP&kv(*LNi=3<+I?~O%+k64 z#IcYQF-s@!tjfeJ&8Mx(S1&3EEGOo#%1gq3a?_UGZ!GVOFYl)P)vW$|L4b2boJUI0i4c)OaOz51ZEPGc3Zo>2n(^6T!qut+4<{4$qh;F`rSJl z4}vzF-*327Z#??7;jj!Q(f@j$-6Rn{?pMj(!miDtu4Cy`L>L_cW$Z=})9NI&vka~G@mD>KM# zl9V?HFMwy7?7uVFAE<_pRPT>*f9;QR_gRt$6CV5N+6Pl-4|=QNPpS`mO?H>K2OLRA zu{JmKGW2f;#DoK_Gy$pwFhPhc9eoTlQfP)hfuQP&*SdA?w3?9&VS0fZ{}vEVf>l< zBYm@`SvNo4_-NffXP#^I^XjSE4~+K&llnv0r_MB;FkS(fz0J#GpvZHq#*a1@uttc? zX2G8v&*fhrG7ns)qIlV%KJswf*s!0I2`yII2H>izb&svc8g+YjZAM zWwWo*?my#59=Z zT&xt~8a@!3O4eOEX@6~khkn$5ZABmZ?2od+=@)OL3{J+Gc^b;3c&{3s+ASotnyB@W zDA&Rno<>UgYpX`MI$={4^F9JZPuS2@_k`%3N4*U}BA8YD@dz`FhVHBlx9%Y4}YqyNgD)qJt-85U&Q)4Q!-$P+IMH{bs=WDSFL9JOn-PlIW$nVRBHd! zE0@?sSzSf-0Ph~9BVr*SQXP-Fsb`z&=2)lMO^a7Tg8_e;YTOevNj?8O^FdosJect8 zW@K5&UQSKAjJ_vP|Vg2m+0k}RX8`5mTH53{$OXrVA`!S}jyBhKk@2g7$irTFYT zd~sM!8ueQ5prdGx^kpC!6koovsDwujh^NC2r8rM^e1iM^fTRP-?+`C-$O2ax&P(@sR!yqbXkuTE|6$MHd} zfu?fiS;5mDmA%0y*88?^Je&5u0T1vQas6!PGwLQ*4E*yy?ctO( diff --git a/install/img/box_title2.gif b/install/img/box_title2.gif deleted file mode 100644 index 782bb2e69182ca7fb4922568ea88e2f9c0e77528..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31229 zcmWh!c~leE+nz0ZfB*pk1W3YS*fgvLMajYv!6gU??mW+RCrB<>UKj&YYP!^S*P=o#)II zIrM($)$og3(fRO^{`tV*#D~fD_RjWBV`KA^!IwkE z?%tJB-gdyYJuo<<;o;v#y@e@v)XCZGZp$_poWKis z_N|*U4?b<{G(PKSH9URv@WIm#V`t~nrY7T?cW(yg^dG9(?`w-K(*&uAZ5Gd;0nZdwRMx zdAjE>2Kt{5zI-|I?)}?ND6GKmHNBi)r zvEh-ot?keIdIvV8`v?06hu(Ard^_s>epLM+)936czFl6i* z?(6Hnb-k(nm)mdN{?=_Y4!rE|?j3pYVrcUB-(S8OTpqvc)!0aT=g6l|=Js}DM`u@m zZ|~rs>E+88&y2m}uiy4O?`nV6`9sceC3@=D$zR9De`{-LAMEdc-rN7n-FtWHntPwW zeKj)D-ZAj*-TRKVXND)ePuq-b#_oYvBR^k#Xn6YcUj5x?{r!fvmqTM?b$9A}XA1Q6 z&(wI)Klt<2tETZ+Z^qx>xc;-*Z2t4>SJUh9-ma1Ufmi+gqaAJiV`F2zy)R!5zJBp) z_``?a7c5wyJE!~o_uuu+O@^mWdWK$(zI)f*HPGJEJ3M3>86CTGr?&UyaNo<9#-7fv zQ&Ru{Oixd<|A)++0D#~BAO8QJ0EpAT)r+mm55<=G5pQ|KSDufe;C)yg3Zs$D&_Flq zGOF=n`xP}eBeSY6MV*XTvc~^)(odbG?z(#}zQ>=m6>=FLO!CzH=E5~rf^Yx(^!iAt z*Fiz}l#mlu!|;?eYu*S{MfA-YZLRV(=ID{r$<%*tLG8p6*$$gi!Fj6ifHi#G1wp6Q z)pBdFHeTFm!$MWmFuBe^39GOiUqmwrZc!he9B!-BE3T(@1WVBi#B-d`#kpLapptSr zswhxuj$d_L8JKEWo>e9Af+8|C5o95L!>be5#gJwtHLu_0*Q*3r^Yh4!UoDVAsE9 z_wcd)b^HId8<6F>~Wd04@wP(4ragV&TaGM=H;fNzU$y zVvaYn^EoH>8y7=OR9?IPO)Q|1Tf`F{cAr1;S?}M(7g^dC6$e7ho2<)eJKQF^ia8rF zMnMr73+M!{?3L(e-pAl9q>sx^!P_V9NWOc7o4Y2f#RWY?i8JbEd6A~n??nGcdM5-lKJDKsySf2Jem|RbdT`U@kCYZVoNiX zhjIS(n-1*c7Y%hU2A-yr;_X|q#Us}KpKi8WtdMmfjPs~sQUC>ekO>wW*_a!(d|Vo7 zdl|!S`w&r~)0S#fXj2m$Ia@TExSS-ZA!-r3QFRkJitJyPha_iqiEMa`i!_9MceMp# zIa(fVn?j2hxokoeZPwvLRsde7tyNiHk;o$H(aiweDqQyk2qdP(L)KO)0Zr71@taLn z{2}*9vPWSW@kD9B63u?wcZB(%d?5H-@u9iqauxf zOKgJxrpz(aE}5IKh}a2yoD!wrKYC~hxc9|!l#`m><&L|M%~llzYNsy%3(3WmnA64v zmc-G~l(lTW%Ez`*xtp>4 zyF^Uf<*T~cu~!mqY_2`vFY*qq`is64fJY^%eCaZFw0G^8Boxyg~@ z3Y{k2aGshuAu8PyTs*tBl6sSo$Dz~QV{&DTsBTqJg;v#YcPl-0BK}*W8QMwJZ3~>x zyTASAP<MOM8_0MmqYS{RWEPZ$P2NEQG*hfsO`%IUQ*HiOCmOTFcJ-Dw{Qbumjsu z-!p7Qyj1~&djh^0Fztt<1wgg(`yiHR_CipTm}jy*#Eo)#`qTO3%C~W5-g2Or^Rs>CDA{H}8EFZDhnjue7G>xy&u&zg zoX}GtVoV4k)yk!*<JP;CN@sO1GoZg8s?1a9X@4&UUUI5%*fuRHbU$anUaX;EAb4-Yl5ZX z^qO#c>tp6t4-^Lkcj9hH0REsHou8XZ+d*q~@Jh+&V{A*56T>hljyN;`Zr?MM${|z! zj-d;Vu>zdWfwohmVc2S~p^36piZ~iUTQLt4yKRN+J<4gi3o0hD5}oe|5FQ#}YaXC{ z%bsa%_(}LdBa(B#>dbs8&c3&G>GucT__+^W*2((&EuMjMX6f<-r3d*mXzvor#(L168s&Erhk6RfM!Alrdb z{BbtUdU{BRtmldy+ISudsA4#>TUD05I)Bc<3S@ao^mIP>GF!v4yg31FP5KAIHII_2 zSEn*u;{lfR^_I8{wlr^_l^gv}AZE#j<)_{PZsDnyMbbQ4ZYAPm07RBjf%DRLNwtN? zYBoh}bM3uHx}%J;`)ZDw*KLhv*9-KNg(&5cJl~53QlgubBx6e9a+CfIK;=jY5ouV0Sglwq(}yi{-RdKb4g(_@T`Po|eL0 zVXG~Co}xw1cua{e%^iNf>@~YLg|YkcvNIo&e)$`?KD|d!vw7{WtKaSGpEI#LYXZnj zZGnCs&KRBjTbKN)I>cUVxU+d1k63MSp3rXzFB~)H1$!%@Usx@~BNS>>?!h_*$*i1&5+g0?rrpcS^^;90YI?ZtwYB!OJzY8<_mD=&)%-(Rz=-^S zk5~P69CQ=s{BqYt`r(Jk)5BkLzi)V726Rnr&@{yZ7WUm zH?e1D75e@LPVTn zz5*7Rz|}hZW-0Xr3;6XDVFd~<0f2&hL{e)JB*#~M^*(nKw$|cii4kuZz=#%$Rk#}_ zii^>*8Vz5c3RnQZ$v%SE2yE0Z{cH^rjId%kl5C6MWkjACeks^D3}iPvC+tT_Q91zo z3ld`xnT8j!kfbCy*aS=oEHllxB!Hxp6EcmC&-<3M&N~Il2}&*z6Ikpp&h7sT@~%Zf zWYB_X0X%MU@DdQ?bbud9+K};Gpf+dNy!E9S=E;c5J?BLU@)pQ}00D%jB}dW_3m&px zw-PV{c$(^giu}LpX^`Lw)*l)U7MywwAFLFPO$ zEkCU~KTbgOVtqF*fU}Kol;DsTN?Incy!=O4OfvlIYj`1xbDa$@(>X0Rlh5*?17?e- zCgOWkxE7szfrrPBb1v{Gi*;#0GQD~3O7CNCC%j%FlK zir>bCC#yvvw47CN$haA)kU=j}3bTPjSm>c+)%n8gy^cDfNf&y5ItQubCdHW`k`4$n z$uHLzUNIJ4XB5Tpif-rNf2k-+y+|hLqVCU(v%dTgEiSSa_B4C16|P4GR5yGs%YK9F zp4``R%9t_t8pqPivV1RBI8;NGJls7U<$#IUpreT166VQ}$K`ku5x=^2a zE?J8|ASEQT$Xj*zt{*Ad&%o#ytw+gS*n6zg-1EUwnv6$MA2Cf1Cp$r$1u*_QvMHm4; zdHi30A;CIeKZ|gniy#LMuS0U=I6kQ)hVnah53-rBV9LNLg}4F3@(yPJj+0zlmpsJ0rpf(3@7;M-p0 zZZsUnLzX4L5h!`?A@ais-z8XikE5#Zg+>2~GcRA9u{NLi+w1K3ma{?V*$=H}ecoNi^@pP4E%@d%G7kiz2tAw*h|#lzQ>!f8C} zD;~vFN3b>GlBZ?JZmngOOaKd77?;8V`A>WQ&UCoA@^dsHE(y3bND!ds*S>+}^1a3Hpz_!Jm%Ixh zvD>0#kfRBHFULn1FGM(1iC0y{oUDo?lT!rC3A#|VB5Hpx;>}vR;0k#q9VkCa+7f&` zZPD?CEK7$kpqtqzv-P;y48GUxuU+)xZteajwbTO`1 z=Zm9ESA%uPCp&n3Es|rvXPVdazFkgR1$!v1UU8cQ9-5(AP zd1W_O6+T#zlaWW>E5mK@ou3`IYikM=wQGyb9nF4Uf~h)Tb`Jg}isKoPQ>?=3TGE>N z@H)z!4RLoi72R2&yTcj0^WEy;tfC8NgNpVzXYKuAS?;gD9Gs3l9M{J@6;x$Z9NPbh zDE=GD3o6^AqX-5v+i`u!;E_52ym|gbC{QO?}xu1R$w_~6NPLN zZ^nP-{c`xjKlqVL1>{7238nOC$}(vsAt& z=xGKKK#_AOk*$qp|Mi${e0rd3ra2lb*rWB_=cY+t1aabLQMqH54e{Q z{&JOn9~5V+kF~)7D;eHb4)4}cp0G~so;CvqY1TC+Ye;Ib(maC&u|R_L7MgN(?M*5M z%2;vt>RPF_I3|m{MP{=FBhUUP?wW~=(P29;(8COTA_VjV#)e)XPgZ4c^>tT>;dlas ziS1dyg&-O3%?*+_YQtgyX+=0I8Sqkvvq1CoUIai2NxhNAqa9HI(%_qP?$*I4HugCv zSxl`tk$}V*;jV4pP1@qS=6|=Hu`5%GOETlE67jZQ*vkajDpTnvja52}vynwi;vw7Q z=e%gmr%G z`T{JJ?mb;g+M+<(X2i8(oYAktZ9C9^y5r?gho`w?bh6M|&}r-7JweS3sqMrGy1p0c z_M1cM_Bbp+FJ#pJGjbIF8>lDT)Ow8QNBh7cP-@O@}2*`-Qh$yu!Md%f1T}EXaEX#9Hp>oVG$1p z^2(RUmM)67TKg^akUZMpvf-SW^s{!uwXxhW?D!Pfs>6r_1wVqcbmv;|I}>5+G|j-2 z-pIS$irli^cqw*EE!;g$_GgnrX{40e0Ga^zFfxObGeQR!$+UPoiuIK*G@7;buivAO z=;UM?`MFJ8&=0srSln1z?O=G2Oan$(t`Qpv8$k5m>k2AUU!G z<<+Bd#+`$_llC!Y2q)i$lR<$PG#QCpX3$dr;LfIP*D@fCNX|#e-daM3U{@TrU@{Xr zC5BT4UD@abKWSeq_4#`3n;#g2+N`p{OWSuzEa@!RxB~w@K+>9Vfk0xQ40<)WGD;S| zFHo0~CKksMDvm+bGNR5@eD327T&_P2kekp@(13*S)^A`1Zp8UJDnFM;#bnbS+`=y4TB=!ciEsV&k@kmxNf} z+dM*zcOt+FbGn4fF|uJ?FxeJE4x5OsCgO4)=wt?O*j%yh#gTawWF=)Ws=a08;5{hU zyRF=$dzPbBD_)y@>B)1<+4LJUAYqZsXzVpd@;)lw!j@cV^gA4O zvf~ff9|gD1Au|9tCJTQ}N{!aR2{Pm$>**F5aJLp(wK6z1{xcVb90>P|?K`xhiM~b0 zhFLHHok#D;;meUo6XYvs-6$mPUj0ir579}3Kd=EnMnp%?8LdMrYJZmtU~&i%C)0H~ z?FvEP!tKwpFg(tMLuXN*{Eegn2@5cMpc%JAn$2-}w|e6?)8cKx0O9Jv#?&5%od6>r zJD9F;4dNlJ>7M_owXW_(gxT6-d>yh&7{AsNUeBOJ#@!Aa=#g}F;cKUYEXaqg{#SO+ zC06>sAFXJmz+-;`qB7((OZl`E#fND*c1PA~KXAD^@3g1q<&s_-1)jOs zF*hAOsuwDeU^QbO3wY}0i{C^YE#;mx$D+3*%gyCf~Wkh1$w?6KH#ZloqsBch8GqJ|@T z%sciQ&7*MmSEn5vUvCtjD+#l?DL`x2N7>l1q-={2%mh$*t1?n4_*GnC0g}7OWRd1! z#FZ2Ne#$A@%F8iji|)WNHc-%esQA}t_OJ>au7u0IBn9JL|eohlqF4hq6|Qsya4-|6+AVb`;T)6{IE$ZAP;S5bNjN9pi4SN9SkvLg>K zw46}o5mCnZe1}H4-8m;2*6`^;koX^0s39@ssW=B-yx`ERhsWI4>}w5iSi5`fA>6SP zGm&MV^tpm2i#2lHM^GT)fU4^0wf0pz@UT}Es*@*w5gBy$OIAO2J$p>nhG{IL=FFN@&2;GY! ze9~Caq)h4Sf4Qz1m3j|JVkIeFKGcW>cTaRNlFbIU^VO>9Z>9NMBFh)Wz_4YIcoW?dqZ@FBn9)b%@$^Z56OUtMZ8z%%UL* zOYw|V@|TjZD`b@DJ&_MG9tViNR1)2MMK`Lg6_0NSh=CKZMTX8AS1v@dw3IMIr6!OI zxTRLaU2ZhOb4DV;)Or=EQBY9QfFX0L71#2OC_bea*X$#5BML){89HZgzQ|T9BZk)@ z$PApgC;^C8Zldz}%2$c(0#~|;6v=yBsvh)g)^6CWvJw;^5=O*hh|s^V#` zu80h*WTu;u=cXnCSq6taj4zr!0lGRd1P;sq(1NRkUTdQqqA`SAyn+5|3R>~yGQq1@ zN4d!;a5YydNc{7ZK<5#pR%98>#R%)uN~mLkmhC>Kla9i~ke^l}MZ-5hLAAmr^bJat zM3YE56^pb*66sS`dRRS99WSW3e^P zj$6$*$fzM-!;&r49Ewldv;S5ZFMRW?j0vr8gq;SISafB~CZ5uoFH`w_nb?nSS2|T! z;Vma+yA}kRwA3!GD-Jx;i&jRUJe8~U&6r`iU{9JgJkRc@m}lXK!N{AW*HtF!`#2#o zG+#XLOR0sUV+BbWFqDrt`a~{s3S%0n$5yz7ROs}%Mn_k zQ5trI06)8)L&>k5wUw$koam?gg=`ujR++$qeDS`y@fDv7d)eM8ddr>f(a>>WSnwVN zd@l>X_aY1Tn&Z8`x(oO)`@=oSG;QbIPHb3z(R6=r{pFG~X-rt_5cY1#@B7@0BVV6f zKGL77cX2yZw$Mabk269vC*Y<-x&HjXl!*G-NVSlnGi+z2|E8|I_{9Q*%)sFcl_&X< z(M?VhXYj!$m2R=gd7looVp>>b`K=;n85C9qp`uSCgDy-o`WbbKRT{xFr;Pl=k5G&6 zjK-8PI=jHAHdsxHWm5S+_98pG*b6qV94pExBq7lQ7-ZF>~i$GO(c-) zhbl!}vEv&dIL+Ewdp0$DX05HwGn)ePS7!^XqvbMNJ`1!nOjtdZYRTuNm1B2+h}FC% zyIy(T$O?A~QVNs=`s)58n#jBPU3M6X#IMmGScxiHldnR~U1_rqXKGol!3xRa$KoSepfE&ebh9x2jgOx=654z|<|y?a#{)V?j$O1R zexeva0Hv21ZzW;$A99wV4?K>p!0GTnwa{Yi|2*BNYB#vJ#lu1_VrA{|{P!QlMNw6C2EfhC7+uq01!1Vpzl zBlp)Rc6L7`?J2oTa^L;?=(&M_n@27$E{mI=HL#BR%eJ@F&?o57`%d`&>$ShRO6 zr)vwdsX#YQ5Ct?r-P;hNmid0J9a#1HYpX1Sp%fS+&2M>4Cq zb5$Px1DftMu)LZGNFU&3Fq;dvV(M8rphNY=7grw;>KA~92g5y(vOnIf8YF|#1Y{Ii=_AzvvQL*FEs-{Vtv-+sIr<+k|d}zs_-My#;tK4Cg9XI#k_h595~`X z5lO1JyAe}3OW-dgToB7TWI!o39ifN)Y}^Of0k~u>+ATT<$Ajaa(Ro^wE6;Pi46mzJ zxi0$oRiMiCuEO;N$eB|4X&|eVeBTM{FlwHwzLdbb`_Fr8l2PZ&Q_t2b=@X?#x{iH- zP&aN1Td#Uyn9csRlmI-EEYEWdn4{fS)rkR&TB_|yP%OXx=xRm!J|vKI<6MTt5h$5N$klfMhCEm)C3GggK?Zj2N zqF#E{10qlDDDi|dM2v}ICP&SYg?7}kX&It`EdlHz(EBPgyt*p=9}tkwVHuA>vIj(I z3%ynu!H2@-Eh!T4BK>C2fWvB0-tgbT$9# z)c};gG9!PJ0bLQNDu!n$F^)>|w=>+G$a0Oyfg^ZiZ@I#G3Z|MsyLfP#YYj>u^1rJ8 z09Ei5Ox~{WqoKi?XWudvp^0E7(FTqsde3Wj$aR$I2s%&TVDLH&}+ChHH)errXQp_?0`b!UC6P0)x z8mGBXL4z}wA96C0`e{5zzJbS8wN;@=ZMDISbDMzn&}v<2>XO=OCmp=$3gejO5V?oA zRgjNQsXA&dDw94qN`wF|ik}d&auhHZ@~=?X3@A{x#*3%4lj1hF=h69SIHp>nyYGe3 zXcgCH%?l6jUM@8)pMy&X@JtB0cxBa@<1SoISe z7YdU;FT$OW^kpEn~NSHRX{E&`J{~e z@$nG-LW27uHDtj~aLfS(;L%8n%{z(o*fiuzU!2l2>BJQcxE6Pu3u z845fGwA0eNbOk`IR~kjEWI!byP`39rAMI&&>xfSKLa?e;NTph?aoHnls1T=e!xYor ztTGpQw+m0%9;Nd#+g!R0T2(xw(;%0G^Xy|9aj>z{^(Zk?8j0* zoT^^BoG#L-sCFr~p84gjI?$7U;r;-JavR@cD;fJiBe=<66)rXa4U|adWKKe~udcW3BSb z+E;(=fAui2kJ&b3m80sa*ivKFjzzaltWma5+;jQrSsJOYzQC~xolZqnM@ry87QvBK z05unoDQI>^J}D(1sX%AT0nvS&7X!au)r_RzV>0ryiNINm0IAbGE*@ez!Yx2DL z&swB;ZkkcYYopGcqiG@b>?zL3c2%|kSkI+fRu5l#aLP*q(F~B6te#U?YDHgIz7x`|Rr1#D>oh$j{ErW8^h z;6J+VV6Fc_o&9T5pJy{fyr;0M^&wR#fL}|6XsZ(jub;4%4&-mg;POuRPiW4KZNR34 zQ>!2dkgO-PBjdJq6yG82O_XW|LXCW#|8e_iq`on0z%L= za?nAeu)h#U-~-{nR;ff0YQ}|QmridYu?$->$KHoZ6z43rerdmP{!-?Isn15Ty6S8k zcCGEwCDl)dKU}`Hb^5`0Md3upmB_6(1Hi=>y-wMkVq*?Frl9o|{b$b?T#u&)lr7?~ zK$)7NkXV$87BJ1Y^{CX-$ceC>!3&6p`#rCxfoJrR_HcLBK5dn%&sr+csLcrI^$ zp4s_VrqTYRt4zh4fDW(8?~$tk-qREJOYa{#XIKhyD&97n3boK05e?3P2F;;KUpn%Y zL00tY)s!jqo(bS9aR}=}p8$jvf8gYRdWZCE7*iWe#M$W{`fCs%c2#R)!F6*?f9F&WnzQ8-5(jTHn| zYaBExsucK6e`&+Zqj=+zNB3i+?)Ju6wC(sraorPoGfZ=J@j6aMb`qxecpChvF<^Z~ zu_J)n`(nm{RxCM)&|iLC8uRcSBw_Q{NF8>Evvwy;Hzv+fC$+e{9@u@@J78Kq=Xm0> zoAZ?(x5Md+JqxHJBHP|6Q%C=a%d-d}1scO{XQtVz2JWl@>Gkw-dr}J7+#5gYegFLfHHUSN^`8#IIt7dBZS; zH5HoMH7DZ0)~q9Q4sZGM(fseL@WAd@m$M}V^FowFJpJs__di5Hx&2>qxC z%?Z8>s?&b~;{~)K+^~PG;$QaNc`0DK9dPWAp<;^GViDv+ESs*h#SNALo2OKn)%m`x zupnX-uU_eER>_z&-hl6S;f1a*pmiB9Uu^H5Is_6}3YS`&3;&flT~}?N0%s-RoP|2q z%Qx61Hj|$Tynow*B-5~AlwP~E?a66ZFzIIMOeBWr@0XG>YMoB1gm$JFa)i|&(Ump( z!9@J)r$vEr$AMI#_z;XsrArO8O9jRJK*MA9T!jad;Ao=>OAMTV z%A>l7$|V+CEXoCSj1-OvKk1qk$idrwn%v<;w=nKF!`-() z6>6E=+H0a5wpzJwYwKsQ<;Q$#&xQF0_S3LkZWcjPQZyQ7;=T<2v~74F#>BeX;bgE2`Sgv7{8L}#2 zl+DUIS+s|1dlrtdX;S;djS<`yYeVJfM3hL)c_mq<`HYg8429k@qAIo7Zhl4SW4Fke z;3z4fLMS3#8Icx5{FgbZAZ+Trx9w-BDm5=?i_8=|_dG4W#p?Fk)PAz>LIq6ezE_7fKetQpE7|; zKtiuY4hEin+Vx;g0}H{mY&1Q!4GynFG6S_j*efFov2O47vZ(L6IY(@u#!A-{=MPPk$)r)|M}~m>p%<;Ah))N zHYLFperIgM=;dG3J>!1?H*M%Wf@sH7Q`(e#G|Z?d7=4jZZ#B-oq~785&9l)p88?qns22xUb#c!u{qpY$pSsmz1T(XC)HC1on$P%dyDOcY7DBR%oU*8bT?NIw%3WIGOSz&EsidV<*bVbhCn zPA1tCx{s^?=Oc+q0#BF8mj%YU@#I&7J% zbFoSg`Hqhll`7I^p&4S*l=`witrFQ~R=Ihw3K>jye2S(KUS%fuWme)Ap{R8YfRFw2 zGVTO4M)feGTn4!6VIgGqy^hSQ-ip6?QelxP&)ewNgx^%%uykZ_2YcEm5XuSq?>q6lwC>5}Rh0m8kwCB}J-M zgnz`n+ZPFb?*0+azyKh_f=#V0XZdX>23*Josi}GUUG&qy%K;Dl)><`@Ci)RKp|`a( z!t6TXhR5ZMg&xs2T1?7(D4h#7bDJ;mNbP7{Qm}|r z%u{W4R1iH_kX?cdpL7>H@Lfti;R8z%HWd$D%Soc2)D=ZUrmnb>lJD*z$Awg*VDi*s zyvB?Qt`!m^0o=6ZHxuYAXE_ucdhD2ZL*+F-2I8j_g+o6oZMcB#OxUtBhcNzql#E2~ zQLg7;P8~zrXt=4>@I3{=LpDm>%x|*ZXH>=bc{unz?XcO=h_@wmCgeo=Z#(};ocU&F;K;d$RoZ7~>RV>Vj6v6Iol|A^iE-yNsC zkDu56a8>i*z#$T@oP{%ej`BMoLkZ*ONvn!K6>rOZ&3r9uS@2($c0Dg0p#RUXXx+~B zd)}sV<4&}#SlDDWVR{K}8nb+zu{yd!3eG(h z2xapDFHztlWT+{ya8uodqA|NDxx(HqBi}xqhdx>;w$9`Wazig|S^C4Ot(C63FE7#_ zMuu7)sO3uHH)Gyr`35JaoadU5+Cp4-la-IO$Ds1g^1l`9bv|8oM zQNZp@wv9|4<+{c?&t*bJaay4Y?`2&k)ND=SSLnwJ>P%sY%jfyhAWJPvP4_FCx4ubC zuD%@ios;aWHR?bsAJ!fHxI73~ZP<>kDR&AFlYhOIEGs*6^HKPQIkQx;jx+A8tCmeY zduy0=RsiyuW1Mv3fYVm(qfPySV=-6F)o{n@Pnf{`+7Pxtl z`tzbhZy_t>B1TT>$mT646NMxbO8d6XY_a}R81~8Y9Let$E|&gfksC$&3SM_EiYklu zTk6t_#& zR?T|K_$ewE+hq`auO2O_dO>Mce8{x3UnsP*6fp)Q4O=ia6>{oUF^qavF1Ro>B^Cl(x{owyHPQTpz(5OGv+O@JkD#OYI$ z9S;r9RFKD;+_Zv~6M&@zb7Lxe)+opZ6;dy7mRS5!C-l>{oJoJ`*evqPuyLUa!Fsy} z?h^h*TegS#0qMkF{`z&_DprRGX!IAasO{?}%l_&*TJ>`|DHn{L9Cdz<{$p|M9R#zeJKuVp0UoBSH zpz|;ltme4!h3rHun2O@5fG1NsM=I*D5C`1@NDTL94-^G2rhy18ibtD*&7j*96kfxm zCjt&%#DR;&&K?-!v>2C&`P4NsGPeZEg@haur>@DTPVD;ycJL4fo^Iku1@n2Z10W(u z8-t2LuXM-)RR+-%7G{WZx6vX8SS}LSRAX-8g5dyx6A|#O5^}2*xrdZaRr)JK7?l@G zT4VD%;B3@$g=MkF7HfsWT96Rg=$zSaAFQy}qO%$B+qDW`bE`E&HB^fJnuSrfgK)Fz z01gX8(@7@A90@uTP*{~N0GI;j6jHrp37)#1+$^x53#~JKMKlONfd-<974G))4Gd(> z>?-p-Y5}_RdTn+BJcvq`c3Mx&1-*xaQ68KBw_VN375?+Hf}z#B40w8I^$xwiO3J~9 z|6OHx_<1DiMyLw~&;ce^6eM>8^-m?ep|CM*Y(YGO3 zFr$Qe=PDR$YFLOD?Qa}UAnF@Yuoz6Nz422VJ20h@riByPk-ydh0Q`n1EIxclBET+xQz}1r8BV+Kw$qbV!Pf| z4p@`FRB%>44f$gLNVD>nH*&aw1*ZXj4;4fOnP&ZmGO%@_!YX?M&QBCX6{IE!EWZc< zpb;8SzykfJT!GaT;3jV@@tWf~)d&oLvw-WV7U-%^R*+dA+&e^=Fi;r^cc%NiT+Fyz z;SwO`B?70(a8L&74x|MpqMtmPIEz&-HBFovB~PyBtWmiPC~Q3-j)%xM5#yhR-B_qC zpse_-i4zXHc{KW%g*Y_|8?o8+#?WtQr9|Lj!UC9um9SFRRL>2q#6xsKh7P( z=ryQMCTw|HVO=GpuTfZpKXvQXAD%FHjVtI4dc4`y20?S`oL3VSKGn)zCh9ZE0E+#7 zx!3JZTSAkXd7GQ{-z_9_F_kaQbo7=xFNva32!zhC)vJ;5h=Dwf-V!Ler2i?Bo z#&<5+f#U;-j*@Ha6?#vpm_?^dUXGHMzP|Xhfl$}2d@RF(^Y&H~`;5fcBh$VP`;0RCN7{mv| zzF<7f2B}^=%U(pC67Ws~oyhC#$V91*yzslqca zlzY*rnWv}!R<0t6BNhYmn9qXwpr;??iHHOFdVsJ0THFNGC|%^j`88VtS!VTrO&q=g z-0VHi3_5r;GJt8({1h|pYSZk2BRiG|T^B0?a@(B$1%;e+`j7xQt(k)Zq(Tsv7fphSi(-|yFlVYV7upHNusd;Hz zg(6LvuZ8gL!u8t>dYdm8n21!6cHJ{$FQsB`tB?i2?v%#m&Eok7>o*+GyVNVN|CpWibYM?3XT@^P6SIFqPm_307Mi(An!GPJOo;B`_`(@=)H=ID@D`wJbzH- zu%^wm9$5a^h$uj+o;+TUL~&Q z#pNK{R|(jj?zB4%`tm3FJSDdu;Hg2&Fn(Z-;>a9UykEr5Yy7d}4oUhU zds<2P?M}W-*Z2tI`hMSvnm3&5)J@%X^@!#ry?qXaLt#q$B%XsvDZtMPD`E4It|9?O z!eQx$ND|;@js)`Z8-%!m`$s+g71=%$9hR*8Muir=(_fA#3%Yy*S>oGcA9d@e574*V=#U1v7I zWrt7a_KQ@wz#tB0!%%Lg8-lyBG2`PjV?!s<);X&V<=2GR9V`wE5!);Ssk~x(oY;KC z|JXGlR|Z%NZxS`(v4gY=MXgy`9>!4|Yv&f#3La&E`R~4OMeTyKQMLzxKm%o2>{TH4Mn+P7Us{@g6%})2VtI z;Br|tke5ig2fN>6_m6$h(H$1w=?QEvA6ogJg5ZM(<7PgpG&`}{X5FOWjQp{3mHF$_ zDYc4w$^{M~zTqdf4SZPb5T;N>BPp#*?%(pTnV&T%n!O3Q81B1vX&|&MsO_IW&IJd} zei?N7uZ`RH1#S2q3J%Jb#5DK& zn>4^bWY(unC;F(>sl;frx>TZ7(s{AkZe2Tnj$Kb2USjQ}F0tYdt`1joiiChFR6Q{& zK$>(eN>V8xcu1M#5zK=q-WWSjfOgS5T3W{DdZbZ~GHkkxfG3iv)s@)@196qjgb>^_ znjy=+IRWuaWR%WB-Up}8W<6&@C*Wp-f>X3IF`lyRg7 zgLY`)J>sU(3t(tj)93ivjuQ&CsA8^I?LTN5MzNCA8HwATA+T@LAI^{Be1A)OG*|Sz z@zKNJ4IhQfAj{o%XPhcFj=;-x7@MbpV^jVc@$bRQat6l}n%3EF# zR==f1w~9lH4?JdKllZhw$*L(xb#>lm0IO0S=ivJ?c$totqKt*ggZuVQV33F-UG#j< zbneYlTN<~7t*n~GT3O2+=8}ZYv|sqe9bdVQ=X!c{GE^=!oj-I3f9npjNP-cXWpbc z-_p!bW&Gahv?n1`+dW0!a7{b9$G@-6v6{2=T}yoy7efIzW21m3Y*mMqaA!)2$=pGt zfgoHgIa(4Z66IC|Itjy}WFroCR#+Bf3^!#OocB{-WjQfM+n95kF#Rj3C|g0eK69V7 zM9*5#4wGLYV(L1qm}=I^cq^<9UWgd628~iA)Uh(yL|O+*k>-_ww9n+tLo!M%H;k>o zr-jUeOWziB(&G%_fq)J~^kOzmTI?JlGaij2OsXZ~UsO6%@oBMxtHdo&)@}F0HQek^ zHrcfO8S9W1X1Z{9+O!`vHO+~hW&`$|&pBUVP7uQwLf*VBtNbk&Iy}h%qag8a@f1&q z)EmgD)>?wQI`WE2TWl90C%vfFxz#i}SyyAF^M(~H5%rjvp{05*(7-OwjEJ@wkjMIh zc3DW-(umw03zmk#%QYwM+am-!CsgNH1Lc_?8z^-)J$4~{sA<75MlN6(&@N^b%ARqm zhs(MrgoGeG&NTt=p{EF=;|ycW^*KF++IOVoveZJ40??)ZTWelX7UhSgXL|3b#X2bV zz=Cgel#pCngny< zR!oqmrM`x&`i58)y}-0dy-Kc);=(D+wS&7^(UmK6t0+&VeDaTic6vR@d3eNUTc_BE z0MPDUxoKPa?%;yTXMuP6af|$cN*bY?G)AxKDx69{@X)V9R;p9#taxdu=VzcI z!DE-no6OQrY5J07oK&mjhOTMNCkVh^ErBgzld3f;dL*Bg)KqFMT%+}9!%1^-fYgBU zZQIpWX58J-IW|IDrhw=44S0{pNy*$!JEsENxfh`AM z)(mc#iP3McO%iUim|x~=lS{Fj%%eo&5&ax|rp?#$9rpD;t0~ z-^uwNIW4}lW^gL*nIkJw*kw27*#6pPJc$QD%HVS+Qp}!1ScQw zq!Jk2#BQt;I&OX}VH00;$o=ewAEpeb@);9Oxe48!iLD~6w6GB>-3P_xvXA++tfp=k zsSM;)g5a-9ZgO4Dt5>tNJi9uTaYN(q;^I*g7uN_rCl>y%A3aZQ4`bxuASJ1oc3Ku$ zoFr4h8w1ULevzwMn5Hw>&6vBv1tp{m(70~F(nQTeVsGBFPYHv_@t*Bs6>fc-tI zu6Em3<7EFeIb&A(0Xt^XLfW}XW+{uO)l>B)07Z@u%` zM8|dn3=@XiZS#3&$NT?hCbYkjO|f3<>hiq7c4qTYgwq7mak;36DDs`lD@v;6m_{D#);E`TWLstp6r`? zmwi33{=3*RP3OQaHcCbQVgvM>;u-BSh90A5%E3)y>U$S*jn+h9@K~6|E7e(-#@HE& zBje82QqE)FwwkSl;$=496^$wd;41@Cx~Y)tZU?}##95E!ri=Mp)(LATJ=us6Z{v#& z>*j32iGvEgQU|Z&pQUIWX3O%!;yL-9CYGb8-EgWe3Y*ESJY;5z72HXjCB?WkItwXg z@)a>9Y3&yCO&^ciK=;URyLqQ?^QJa+7II_H_wfO>o|2?B^L+y%c(^@5Y>yfP7-9n! zh3MZbMmc9uW)c83ppXcO8Ui90>%p+jsBBkd9Gx+ImenCAX|xsIYRU`T&Phfe(GhZD z$yKrB*I3c)fjCVpC9Zc)s=gye`;N6<8G{id+NrZ{01qdku7-Yh4Js435v!vn>*^%C zZS)_V&Ru?+IXtd4-JxxmXfcfg93ZqukAue9jk#|(hOkCD$==$PdQ4e^fGh;aM+sT$ zzigB3>XHZwW$dgzyErYS=(Ks?;CIeRj}<5htK=1G)lmsM8fFOIPB0iaCl?{s3`#`z zC{r=5gbeK)dz=zB_|B-nN*I(Rc@uNA&JVRaEKh<;>~?Cay3mOKJS5H4nw)+9aj@0A z4P)=n&i77dr>>>cOlRzXDzmg#RS57HrM}nO8#*%&clo6=SUYZIW|Xefqr)jO>ibjV zkEh7rF&;-wh>$@pz``sA?>i8<>jI?~Bf5HuRvjPG`?F!J|6F-(WIe3Ke2lck4W zcd{%|t|}L#05)SXC??CI0|)bD7V+39M`lXV6EgYSaXrbQ)aMSLQ8!BPi068qwc4ij zAjxdvAFx#XGv4Um@hrQZ&Xe^D6Or7s(g~~`h5N-^kKF(+2d2CM<6M!?ViYskC>yuB zguhD~waOk~eMQgWV%WHKVcoV`sYuvh0OI4#5Ri{Zsh!y&tHX^p?0;QGSu}h5r z>n=)=TDkmVNwuW3%DpdDVv(dPF4B_$J(z(C?D+`*05lVU;X59H`g90NU zM}s+5=_w=p`A+MVnb@HSR6pfPF)!`A+>hl+Kb=vHYPi2lZ(;h;*BexW2_wufEHxYlZ}HUv0&&TP^vYl(F5PL zBmsgxMZj&HR&RC8yO^`+xW`?EHwTo%-@2mqLXN|^{`%Ssfw}8lu>wqy=A9s*QLiK6lS4d zkKA-!Cwc0$n#DK<0>BDelr&q$?a*3(MB#cd7*fgO=;3vvmZFcq1JpvLhgGjFU4Z7U z?6uQyVy)a-zsvU)xE{s`$H&3fSZR{ZZk?QKhBJyVN+kvs$TzH)19~~c!+5SJuO6gU z;?}HQh6~!X{HXO$J!RWF>)RN&Imy~X%L$SJmA_k?>MU;IWEM{Uy^}{1+dbgSeV9x= zjxbvh`hOTaNrqdI1P6r9A#Bf1!$|KF7GU5dl!!Ho2Qi+!k+t0E(#KWwKAgm&ES6^y zQ`gXo#3c*!oO87Tfz{sdcrHmxP8L61DnM)c!cWKJ0$$HF0P%@sh3b7n{ zPb@tNzKv+?S}y?f$@3FfrA^!s9se}IsRB8ia`w3U0}f8yGzz4ShNNq)LgWMkAAXFH z9^_+79e{YQ=XORl-e22jP<`e*dTyxaoPV0J{&EQv$qpZY# zZn$(MjEvq$)5kZgr>3=6q{>t|vZ;Ex_4|jEkN=SDwW@?+hW!=RV`EvLNS1h$GVlPJ zuyn1abS;;HYSjXy%vwtSI9&G6F#ko$b&(|{4dZzOCel&+RM2A3oEjp7YjwGg_4aCc zhKJ|M7-m0a-qQuRX5xf#oPfPZpE{?!F^*F6!l*)i{kcWd+Vm<_*vcCH{<#=Q<-aoL zk$Y-i<``o*gT#BwH@8`3eV0pRX_Jx$l+RxHE>T2EqMA#egg?w`9qC6E`&rpC_Y@9qi6&u$kJ^iu z12-ifqktxbWeqdv1+ub*T3b|Z+b~(8O(QP9%9QATCTg$wkG9R@TgBO4T(Fg#h`*O0 zv*b(mT#LPS3FLIhi457V7qpj{`b!GrGI>t&vx2$;Bg_LVF2qF6V^@h{(n!VNluNo` zlhR{Qcl0U>4&zKj!HCc@Qs$aO$)O%SeHgt>1kEH0r@MM;$RscCXP^|AcjHl}QF zbMwBJjgO&3ar3vBW_c$s4lle05H<1J=%YLuXek3}Q*kDc}ozg8)q7Uu(ISkGZf4y^t~Cr=E~RnsKdBhsynsGbA!rU` z^dKh|Tq3ug9J(9m+AFT~LqU!r^)1F2MhQu00&^Fe>h<)uz^5Cso_qMJE{x$n$u30G z3-zR#&)K*3Fc$BzzborW2>mpQn&v!qUp|+RM*MUWHRYgi%0b@UvCPV-1Ep)(%kha* zVN{-;+R{awKq)Lekumk^=;1`SW64Co+V?QU{+GEyK}&z>1o7pQcb-lT6xsTB5+RxO zLJ=?-Xa}V3cUXR{*0Wn4CBZD*mo_cd!42I(#<`tiaCxQzC`Y+h=8f&JrfwA6Klw~v z;%1vMn_urcXHgve?v%&md2GWj&qJ58#fk;J2cmg`E=J5| z=UIJCYr>u7o1^>mnEL43ozqoo+YboRA{m=SMU&EvFBmVmUXx>@`C)sn!l0_@)&>%% z3Yfocgqx@Z_{dvYONyBeWp2)EBbdqnH3+&9vh$1+@;Yh%);DFKoqP3HtO{M;R7GjAyvMfXgzh@qdB&f9yNn|;1J zI->_wn$GJ3ZoyGQx^C~V;TNoj`R|Z_mey{OB~qidsWib(oSoh68#OJkX>dfwEeq92 zv*OI%m2bKj^B?Avvd{Nvly1{&q{?8B2drBk*&>uMaVcDGN%HMS*;AfsC;Hn6wiqTo zzS!gVRz0)J?!(@9D#2#Pyqoj{SAD!yl`3$D{oA32UW(>|PGZ&Cc=_a%hjo8{IDD-{ zv1{XuZTwQMA49CRG|hbHFc#uHErkB>bP8Z12G(Jg8tJomW-<4Ad+_v>&~T5igEPDR zo%-})c4-HGWj@Zj@IU{N=04_I>xZLf0{$+7?Fl9TdtC@y9RQ$b)!pBN!x%c!l^iz(RZ+6>t5O6^+RDM%W|p(95Ks96HYkp9?oN(FXbdwF^IT| zegtJ%r8WR*1!2~S?WN%=a-M)PO0md2BKZvp$!^zj69YQE&cEE44;bGDG2C@De)F|A z3U-txfo9GS^RH3Hz^edV6q5N zSTGHk^(8Ob`WOIfz`k=LpJYCXhQlzi4$etNa+CiRD zvW<8+9xToo%WKn|;z!7~kSJ9=%c-(m#>kOPUV6}f(vf1!X&G@7VL>D38QWAka^ys( zSs{AWJK`Kk*{*k_X?Xy9Jtbri+Q3MH;Y`j^AQKH48?CYrNu@@*hON2OuCxwm(*+9w zYO3Lq^`xHcF1*8AsJB)fM|F&i6DAqRfG0_NYUdkJc(!n$Qi%h8s3tGSMzO0jzcFTR zJZPUQ7Wcg-ruVNlp`m2UeqHOM7&31RAxY3McKlA7(4zQ;2%loRx$6cxyniYUAnY zu5T7S>iB)SNMLt{*f`_qu~JXq{=rK#r_H|aq9{8oS#pnp+q&MV_?Ni#v?m@2ttfQ!#)dDrJ0P}P}d(jtuEYg%JnGX-^)wyg^mvuC&!6w^Z4k$z+E z$rd>nxCjHdm-2`#Ozf1RUh{h*;8i{OVXK)CH%Y{2nQ^|7lcgoByi2f8-zd{;ct^l? z?RjGZbjj0gU=nZIl+r!E>1ZuJL~jSZ1)1sj1FHsSaZquxZnNNmIXFL4K9A$jG|J~ z>5ku21%3blc{f{?%%17lO}C$kyZ(j~TC4YjK?uoT-8nm(t2lqkP!XINKCEGjd39RA zbnKe+k5AyNE_Nxek!F4}F^q+=$VYA~f&)$D51t{Agz|$vwYwP#t^T*MCg7@H9<7?1 zB|P$Ema=u7UNn4pr)_yXPV_BMvc09nc}IQ(ys85DwZ@mZ-nO0I(y)uZ{gwW0b1goX zF1h|?r_ZJ1;k4R5ShQ~@G3*UW@hV`1y=X1Y?tBhz*W)xu3)^}erCU(}szeJfSla0` z{p(X}UKVEUn|S1&2y3axRH$LLCgGFKgLf5W&ItZ*eDMc_`V?3MmI4-a5_td zQ!-q|rJHfkM@XE{hW|~DAA>!ea43unlt*VvR!X+6+4p z+y)T_P^JQ94r!c5kJ%c{YWcvX{C)sI)+}-&-#MDZokspJ0H-3;ay4sa$<|!{3@K&M z6-R7rFaL&_Q4Vjl_FFEbRt7~&R!3*dU!nH2O13fGh@SwP4`;mgk!(yh&Xm;tZ~=!rt_8+rOK1kdS3Mk~B_tT2TNCitmcX0OE5`dP1WDrd3Dslv zve+iqoq}oEK#3Q+)E6N~_KT1J!i<&@$NrL8h7!O4=eIz4E&uNm{r5L`b$jWe@lr-2 z{EMtoDOJ`)8eOhY*IP_IZz+ChV!H!sS|B-5uMuc~(*tsQ8HtBN+5oQrOqwCIo^RL= zs$r^-xDlr>6M|Hrur?W6^oS6ON*z)OG6VVkc!E%D?t7dOcxCHWd{4;!JzM)ZvAa2V z52yP}?7%8-qfFF9YY|%xKCB^T;h-lDtTx0O#gE3SIIo`&f)a?NDTs@a{r31k8q$xC zFbP|qx&W$ZgT_|cmVYE&$RTq0Y!HD1#=a4Pa zs&X-tw&QtNb>7|M@MDy=LI_>J2|J;U@lBKQ%tNRD21kA(wkvF%FV^3g zmt|j^8{1;r*6Qey0?f=*h9jiNe#a}g|DKZ>ZUcqQ`U1OlXbA$UZq-#;1DZeme|(;m zwJCbv{{093+<)X%X@__H=2i6&R)60y@d1D8&?OhjEa@US+xbc)MP-0;`(fuC*h@OS z3Eqf&q@6R+jUL^Q%s?mFPKQQ-)?blhAY6Pt?N$mQeAUtf>C)H}fWuHlu7I>zdsO?G z?r5NOuHLXV%q0jgo5d#25bC;qJD6@bn8rRt6dqFHO9uD^uR7acnfqV+ZU6d{M3xc| znbP+);Emg?ODn87dDv?3FylONgNF6D5Ugrptd+6<`O`AEh2dp@t9B=ROWHCS4Si38 zxjJ~gQH9$deNRhsdbf(QF?ml$#*dF=2;Y9bg|5!ozy?KAyUR%nIajjTP8MJHlX<_n6n{Y&~yUM zO1E8d6rOl#+UT3QT1E)%_sl>EPSP#!k|0501Wsb?!w8P4r1@;BncleZ@}Fq**@!5& zY*<%}Nty5bLk;B1S(H*4Aju(>$~Na2Y|D*y6}HJIN8qrv31R>=IpobUhcGQAdx&KJ z67rLlgc)c81I=DYzo4fc-yrTPjdIk>>2gwe4|{hld2K&w3udg6Z(5Ne4Vmypr- zbnUlgp{HmE@WZxB;&#~?st~-cUA^}dB|%7ur(cXhE^bb`n7qU^r)~A>MzXOAxj?_Y zVjOZp303C{qqH+8qho@A!udk*75los5S9+FU(zyLr1c3!h#UGXOkKhG*pxAp-0Ceh zXO7@owOd7(gg2bxa8BIqeWZm3vd@0vcAZcE$G9I~W<7ACd7>6>MN)lQSo(=!8 z%3uAvpCM_-5E8t_heGNn(4Sjh$w@BFA*3IKv>1^jBp6Jc94$(Fr59F9m?i*V^cg7G zF4;Li+ojtKez}W~n2rTyquCDbjq$GbQkzsef8sn5(Tfew)UvZ23EalbLpcjpbBjX| zptrwV%m!N_hj4b0Rs*GPBa|Ww)i11 zS1ob@7hStK`0VbQi*RZPoR)nn^YpE35AwRnJGl%I!PaC*Pl}h2YDR2!PeQwRC1Afi zOq%5Q#wAw>c7LXAmbPb04>Smzz1gI3%;eGn*Xwnl|9EcA9`Hu5-OU9L*>28B0{AOV zx+tV?Hqab`!S2A;G=xGMke~T_U*mD-jBZx#B&qIT3kF|{1qcg-?qNXm^c|H=c72S(X|20$B8h7vSRiw)Y@A+$VWDV;)`#>gv8pkLpy#&X+%CNDfE#AGQ z@#9>JPUkLxr@PE{Tp*a}c@&^Ycau%+TM|fq!!{S{_H>k)Gk@+e%cjTj!*4O_ zrELobI=7FS&Xak2BBz{D$Wxn{tcB*~kZuFCh5ZEbRoI73Ez)>S8?abw%Kcdb{d*a9 zM`r{dOmNcMWVFCT0k%PU-;bO<9<>P@|4`%tEOgYr2EkTe`pAtNM||CvPl z%fR;mY@QUuRqj)HGti}pIDM;}5RBO*mU~9aBpdaQTYe$6+ELrq{v|8>tK%2awL|pl z%n@zN-{ytxs+^J5kiSh)<~}L$A132jF8Mri@sqXxd3^VtX%EiKOOl(p#2FTiI=k)N zyT-dE@Oz2LcVhnax&{uLoGZLCt^pI`!Rg;C(0$`yHRD~9HQf`rSfb8c7&bfpX|Pu& zkxO62hPSjl{ogD|X#cnSe-WGe;p~1iMnCPxOu~7##{m*;%1*Bsk78+oWo(&jpPv5o z9&0(o{%;FQ15yp+qjPCmsjy&k28|K2INFlX^Q;Li2!&TQhr{2?|D z4648f7~!VTFO4ybU}wgy?HjeJ+^ohNIiYZwkI~#&|I6^ZeBy^LD`#2E?)+6j^Us88 zX;h>jLQA`D6w|X0L`KjwfPaQhjHeb7>1}vy8qYva)Kb357x^JiR>{uHG{8>3OIHDX zY7#I_J)*b}vhs59@m}o$DX=P^?9u}LafWh6XEeia7}wLiW!LUEMWr^lIy#XO>7EW8 zKw-K1Q=p((nxsVj))<@;gHVT;#yf37c}M#0#6jm?N}c>yhvtyHu*kn}PB|qY#2c6) zGzSjD;O$J`Z-EBlb_4Z>fjOnc%-)%=c(x7Xih zQ^G@si2D-2WqNq`KTCiYfMfoHQ8DRz#0?TZv&7`%U&u%HvX9a0cgVgFxA^2a${?{orlH2N z_{`KNX1qj`}~V;2!L8w2F@P@%~|zJm0kOkqd*@2BhemE`hjr<|cH@1B8k zs6H_xb@Fk=ZnNYfE}t*{jVTPSHv9AZO}DD)(-#s%*t6(8E{zhZnd6IlR^BsXxUMrx z_7Q~6eSLa%3=y{Vv;WO?{)-X@@k`Hth~oJ!(99`gym>Vy0kfD*U^yG4V3b*DA1B^5 zlxb%uM^L5H!~>ai7({k`hMStZ#4PR2ediQTBBw`Hvc>TV!A!4wN}vW=2ATH4?J4|- zUYc0b44kT7EM*QH-Wma5i#DWZ5!GDn{xwl6rw*h@etuOrVvzL==!ZpGv0{gmmr*wz zWKawCkDY0M(fsD@wa>5LoWn`(lPx`#YbMY4x;Q3WyC3w!qs@kJ@@>Z?p?qDC6>cT~ zo|~maQLL6C;RK_0bM*4Ckq=VX)0)J_yJaRCDn!F0J|1%@c9tj#bDnN!n7VP>PeEZiB0ME)mGHNPg|2nZQf!o~ocXEsv^#`)5~Z6*ku= z6ioiYt)rFuH%WK>8rqWSxGRL0=~89{PL48ueth;Y6d*eFMg5w*HOW${{=TIPV2+^uvh(qII;rS0+(i~OeU%AizSY(X{PE6qbv1CLVKknT7w zV4;g+RmwtFh1&M1;n|LjNA-Fus%UtO)qhutz|(|_;>m^`;>Qv_U=C5Roko_mt9XX0Nv;+H%hsyehNVuGes5DqYi}%z z^V-Et6&d|U{>|+w8%fOkxuxEPEjDkW-?lv1=?19F>fKLQqkmMZMMpDR?jqA*qCNS4 zG?vrXlHvpB49|Ajs?}Rw)USWA<>le+tisHJUGarw#}0UnzH0I;Q@!rJ@bo*2eFIa~ z$2MnnE8tX-Pn~z_gvU+B=9Ar~^Gn-bEjSJ`0o-i4 zLFso|Y`UYpdn1yI`SVc9e6IM*&lxj#pA_0AE)D*8Va?A;E-RmnO{KdEK$Zlx z*VY|`f$%~lg<;*pu6G9X2Wm$%hT9gAsoKP3^}I-r_p&-{=be~YDKC&q#(ufsXk8EE zro|=A*%dbYx^9mbGo3Yk>HZ(~Lv+md3=zQY#GSeaeR%!l;GC{GD9!CCX zFIDg^8VJ+d-q8}aiER&4CP~A>g^7j>M{byQ+d)B6k+X5lE_G#bU-!qNZ49$xO_4YD zdmqc79WRXAfFZ4G`alDt&77E9#dz`wr01*1W|VV0EXXFX(?1;oa;??JFo&QWTVG`whj*N$z{Q81zfG9qru(DBqg zbA?6WA`sem6kcE zAjXo+PRpSdtDXHGzDOu1O#S>yd?wkD;6H&s3}cHSqw)5s@tg9(JCW9K zQY1&iK~V?4|5{a)kvaFGe;OE<3`-ZZ>u33h!f8wUi}`^3j?7-Q``h^=QeX>RM!9L? ze`}?~)xute>-*h%va?)*t?wot&$Cu!?XZy8>s#+c`tHcY*CwE5AafWBOECypU?{S24w zadkJ{)xH&7V}V751vf3G#RD2y+fn|Z@j1!ggZ8l^jt3k% zAHN4NxibeRl+Gvd0r0oxjH!#K8FKR*@ibsI#zO1F>|2})%NtX9TXpqGGlgLNNK-Y0|&%`pZ4=i><^W3So;H zxB)1|$VJGtb_uAlYp*+rC}wv3>XV}2eg(I!h6L&zCuBSF%V!Ddem&4KYvdIC876!l)E-wFVvk0)D^8P3=%h zxYN2c#6?)~ceY}20kOcS8dJlGw$P2HGgcIvA2SbGNsr%XueTo#Fr~C7vq4iXLsS>` zoqIweJ>=QX{j}x=ldG6ke&gG-*{)Y^{QT?2e?M+StFQAoDCBG0+@qw*>*S%(HtV+M zQ*4OdbAvI0hfd%oar>6Ghli!h=reUIwy!7wG$ z_!*X+5Zb?chjk{zP(!KrW~5C}vI;2YD~^8ZAjP@{U)Xx?Lu%=_F(_6>^pz3Q^q@xp z<|KhE^uUHY%56=h*M6uQW4Sx$fE`<%WOItInPbv+MLoX5R#=?URBWu9`ABDh`-@i; z0{h1RAtGT3;nc;44s}4b6x)Clx=CSU9}KhFA)l7p)%~}R;N^C>(m@1=D+H;JsK0D8 zp^ECv5JeD|@Ij7@1~#>+aMux~&RSCu(-3s1+6(g>d+;aH1+HP zRsLzd_3EkH{9+H^*5D?^cdqKxXw`R3^{koqzpHJpSXbI$M?P;YDTnH}Rur=a>Lhxi zNx}WVuO%Kl#k7{Y2>|oVc#O3nriBw5ip2W(#v+f=*o$egSvmJyPAS?C#){YMPM46| z=9P56;a>j<-tYj8VNgQ_D7ESBdj|Mvn%z?9_fA5#n(5SG>%%jP6&}5^#Wb@zxFdx+ zay8b?yO`@rt#4OIv1p3|Oe&d?!B+>x+*3jUBv*X_T4`$=zz7HQh z=$cxd489qB{`B$SfWcts?(R-c+uHwlu)DkWPK&HLrEBW!e9+X=+R^b~^zHjcy~d6Q zhJh!8_wRQYx_j=m-+S=D@bE$R!>&g+u3vpN^m1tUMd!oEckkZ&=ih&y4?SzUdv{=9 z;PRyl_wPOEG(0ps>}+ehf4|f4$L(7W9!z{@_p8?<#(|+;V}Hl}_WmaWeFFneo<09) z{@mSdc+}meJ>PKu-d*G1U~`lH`SYQHr-NNRk6w(Rsg^vWk)P;$ zZ0zqFc=F`g>o+403`3e@7mZJzH8-~m4D=5Ty}r}l+SA|H`LMgU|50)yn4CY zV0bn1@v(8x_@uwP=h@@OgYWt&_+a?u$i*vHW%!YI@87)`{&??h$K}h{?-{xWCbp)h|LV2t&!0Wh-+s{3 zH`00UVMnL&_3JnH?)KilXL#7(-~a5{*)z8%7W;bRwX)LcwtG){CI%Q7c-%j5_RJa6 z@bjKW{SD{On$6}{!*Blj`)||B;hwH%{l@40{X?Di`d_?wai^v2|7SGt^6~S*rsjul z-~OpNp_w{$>Yso9sc&g+yWiR|vHVY-JQ{rRbkH>P`gM1g@#+r!0OWD-+wWZ-JMUQskuL|%trC`05d6IY-}D>Y zSxWd)TdvYaesKP8mlD@06H1(7N0Qk$yk{`1y-sNDEKZ-MTKGApj2bgu*jRX33e6Ba zER_#ASkhrBj*a6)u-;+ai;Z=aDpN_Y$>Kb z33gk#GIRM#0kV6aJN^qRN`jGTe83n?Vwyl0{ieF}UIPT5U(penDnU39h@2(k){3gi zkHqf`PbJSAI3NolwN^;A>CMFD6!jLCjwU1Kl=U+kAi$uxD|Y<=G4T|(QwZCD>zc`I z!Uj&GdL2nvR+HEv9{)$-l~m=wU`$L|>$~$1GKIF?f8WOZ{_`1k4^BPu?NPed>RWdG zOE*3}(7*iW|Llz7VizJ#kFQ@>n&pJ)QaoIF7ZVmZ4T~U~kQPksoUIzEA|l&gmcYvj z_X0jeVKqI6!`rV5Mt+2r2dq(nWRF?+Mdj{`IPZRNIsPc#L!&a41k4!Wdy&Rh>uEeQ>DTjNP{rYs% z)1U9oD0+Ed^YX3l9(R>FZo&*y>r-BO8Dlf5p9v;yk3gm#7+aUNy_Iw~y~9uU%U|x7aDoR!-lNc&YGy2tQSN$3|QPCo~`wgUZ(>yr%eqMdh%H`d>;- z6a1)-gAwy;tAxavN4pKyshpNwUi$^J~Z%?Eb7QjtpcSs zMDIcwLp2G=4BM`JM{%vJ#R4YtW)UOQre>>CDH4V4j1JIa5p3?#A+6y!!9L0M6J{0B z15oQ&P=!p5uQ4Yfz=`RaK54Rew)Ib|za-r!vcNj`d?%)mD&$#7t$+DuhtRgQ01_mO zH|f|ZI&qu@uSH9boS!t>3Er87YT`RD$qd3PmFP9u$(#mpm$jHOXeREsP620gRjn)@ z2rVIQGF;qE{Axg?q@6_@?mE>K*z~#HeGCwr4Sc4QiR!G7k%f;m7%e$luVDHq#JZA1 zvRT*_^vi|LElKJ}fEl6owO^bVF4^!P+PCY=LxJV8xULz#w+bK4nGrOlcVX7qi2mjB zTcnzt+RVt39pN84r)(C#Akuc3c@Z`UjvyJlm@R-?zX?ia%(~R551jEoxXB|p4+hv! zS%|jEBEGvT_`0qnq!G3SbtGLZpPGw7Tn>yfv_yKYj_za>F~&Kdlw5yq<9RvuKIbQV;ORN)wI?na z_BQx$C{D;v)UADHjn6ZmBTm;4e1Ay%tt2m)RoKh1c|HC;MeQ!rsX8mpH`uEdrma-T z8K(_Y`wol|ZPa@Xn|20hs+Ui0Y_f>VVEoc9wpgUr*{5pJ{G^s;#Jy5W^+v_6164HG z)EbV8m}^8Cm9)j!<$oH0@+(63$C_`Y{~olV$3)%}-waorB1GUr)GI1^)NvI$$1ETo zH!4D7GfL@pFDWB!xNVJCW}T=fod7aOi&v5~@1aC4%*?@yA7@mN=NLw8@_6!17l6en zvmiQa^te}zjg8va>hfMSF7pcCYZ=UKaw)QMa{w45#hcj|?3ICNHG!+tS$gFGPatN5 zFk!k_LfR_MD(m1NFP9q1(4s6lskYgH*hR#)4{5Rzac66@uY?WQ%PbI^w_=oVxr%Po zluqVos0$2o$D4dK>S-Lvn{ z6jIgK>Dytcdc~XN(Lal*fj7gBf2lY#Rf^B~`SYU_5ug^M)yY87oGH{LsWZh2f|%<&fbeKYMsjT|CVhQod0DGmF2>vJRU^v7=( zW)4)@e$~;l?hU~NUlW+5mN_05p@A&A1(%=26+#u^uJA5h;+?v5?=#RaKqV=P=z9(H zl?6>Up+$hP6yG(&OT!LmD5k8j!Yv11(4+aVe+P7yP-vo_O?`DaHOfj^RE@UogIT-5 ztNE4pmsr*gUrf~y!|Oxa>u%n)*7jP;{7y1YsASYDpgpK9W88CwNZ(MIF|$CY-nW2< zMDA`N794#|b_mlmk|pTlso)3(Mv>#Zz%UFynj;ZxKMq6)fGi>mkXx*vf6gV@iGQ;% zX{inF3%uNs_z@(XJRhlRgcw0>vOW(cgwQe=OOH8GPuGb&nK)@y??wOj8g-^G?vU?a zI>g{91vL;miv`(awxB@0i55bRqX9_%mYacs+_;xT()SUUWUelE(8#9lvS>3763lO> z&t+aAqnV629ymMo*J68}p1!XR%GhU;lgOOINt$~QRZ7U1D*Ziw^&Q_A-zl-Vhaa6X zhu41K%%Gn4AYpgZ_ zm_y1S=(w%CZ!5e!s6XpMD7uhx>d{;9io~tQfKD#ZtYLsx$tC{yy((#+F7ZlsHq3tUcN_|ChO9GY-S?$phxHm4JTSaa$IVw+4Kf3RfG+5JZ z8qg(x=%@=CF;Sc^QbHw!_20-xbSqt|cB}+hxi~c!N2hRB#haleI5CGwYcj+0ROogQ z!QB)#B63aA(j&w~&2NihMFdzCI$Z@n$p#_e;d2bsnv-VHf~iw|JWv^~?gF zyxhVhAO>)Sl89+yP^^M5EnQPepZZ(=HZ2KoP^u}PCq{#q3*#|#@pL2-K*3GK6=K3} zK;Eb$o_;l1PV%U;LN;nkajiwSfw+BtAx{M-V+dC_5zN>jg{2ylI&Of0q4=vkQd~+u zdxd^k1r>`IRC%Iv+7J>CIUxpxD}ki}Bxp%Trz;ptMUsa4&IH{wP~Ux}Jk26bX_Lp2 z6*(M5e6Auf*LEh?ZZ^4iUSjb=WpRY2I6+suJgp>|N#=sJCNZ)>hX@Tyt~lLq5^+C|(BAfP_{qV%YZ(HY3z*3=4v(=M8AlMBSLFMUT?Ik*OMy zlYJ_qTtXW#Lj@Ab83SskfdCW9(f|?@d08Y3H*8KvBKQQrW$rr8C+!@~uNYOX9F5!W zyZ4zU@?ufmkufCM1m_zz=6jUYjHgjgE6eI?(fZLcEw_BLh#FH^a8^=D!O+bb1QwyO zqB+Z?1v>!E<=Zy5ZyD^!?az4@Px0;b-Sm$J`YWE)rWQWJBU}+%v}nm!#THlsO)x?k z(GUq^Ge`bTe&L(5Ph#27LP~9gub3!_lEleoG?>Tyt?(C14q-bp=<~cCPF30eiG#&B z8pkA5Ydd%CHavWG{GDm4$wNozB+OFjnC+_i${*b z5R-`*Zm3AXi1mAsY_r9Hnd*jrUCgBLPF!07f_u%^x`3d1dZV!rBeyR8(BIjfb+G779$n z{dY?y@uGHRRgd7+{{KXAHIP6BasV1KS6bNxs?SCP90(p3X#Mx=G3dFCPx z)FTT@=j5#HgP3#SKpo7-QRx)uijL$c3i7BWhFlNr4~4X;LF*4@_ct-cX6B*aXIi-< zM{w#q6J@=G*89`pwqah|q(0dZJm}lR+<@ktpXPV@Ac18vf zL$8c2Jlj_usHD_k#cDI^h!dWe?UL}5$H}A{r%^u>>{WUx$*la8pr9L&3t!L$5>oR) z_~H~&srtAQTCoAFjqpMn@{knHiZC-FnORz(BYLX9vAgIRo+exZ)~E`NKEw6a|%DmO5-tN3%UzC4}x>-ah@dH!ES9ps`{>yxGp743^-#rXD~) zHqiUNqiXHWI-C+=zBG3UdH#~ii)P+PzmF`=c@rIB@4eStyyZo7NwR@_ zAbRhHI`q)Lr;lW)(y@#FrX7}H^bw|P+I;G# zn%v&S$4>I?Q3p6nO0eYF`iYPQB3HEvZnlLv8$w6Km!C%!|3M_tRcL$?nuIA5IcOa7 z#==)oT*1kV3{su8`C?g=P=m&ZZ+<-;yZtAJ4U&?eyTpZJ!U_Xc$am`XDU^%$j<%th z9FHtOUMNOasg85O4Td+Gr6rZ5xoi+!Epa!Peb8p2U(YJWb`^oaD{hTOh0K`t6qF?L zqcd-y;syTK>1n)AM0z_}SsxHPQ;t{LOkKa7xMAbl*7}ffMMZ8pzVg!Wwto87k@b+ zLFUe=fwd9ghEEABpGEE)GadT}4VErlL|)f6$@D-2%kgOk`$N}a(CtAF@m|f?U9#Nf zMP!%;@z#X7n~-=O0mAp6XWM?`-ErAO&Z&Ij)=D|5qWZS_xA)V<*Uo*^(Uvhmt|OS% z3bD<^pK;>GL5Lgxd3Q;dU_9r!Im&ustQeM$Kej$DLH6K;MlUGUG&50x5^4#hDZITs zkTtH=)+Ad(Rz2%?AY(I+NC-zbK@Hg#7MW-AY~Uke$)CT`toK7rDrkm?5T;`#$JsKG z*>AE}(XnnzGvK^LBE(&3B8%-DP~md~Gt3Ew5LA?p;&6xo{*;PV7u_F>&%boAnv0h| z|BdP=A$5Qa$(pH8E8xR%Y{FDh-~gQ9(&D69vO@ddnAK_%0LGHlDHAXxfQ&F(5dl8oeuc^wKF12adLx>wz!U(n^VpO$HQGApOd!phAK}P;1J%fe-Z%C zY@J6yFKh`tzh#xrIP${7wR=SLVwDu-o_i7a@kK0nd4ltjE_xlg`(?4_Wz5Hy*zFf_ zYbIJ3IDLA4!wu3;O%B#nmp@DPo?NHdPI7sjsIoPnyKfWUy!1^J#6h>bD7Js& z>|}EMFg?}}ygtEsT{!zC-7tHKYWjQ~{E@iA#RbAAjgBlHO*0?feL=h54x~HThP7=t zWkxag==h;2B<$R^W&XKdaE%tu8itx&4!*m7?hh66$1RAWJ^$b-={sgM(+8=yotfYR ziN(P$#!K7MIkod8v|I{tvKC1ckt-`NtjFn-d9y6BcKe1ys`o+g4d#D_ub+ihvn&rE zF|`(<#3NeDJ!`dC9COfT$2< zl@3hANRvp8fiXYyYtD&fvvpYp#{$tq_j%Ac)tQ};M~sdbVkWHS722*ISus7oD=r&n3s(cVEgvr<&nie*!6H?`Q@o?<=S1&<)bL_KrxMq>?}G4C_s@N%UD; z{`mXnUn=omz;E*nOl+)V&sf=7Q1R!OD){^K`QPKpzdv;UarDpc&nQgE1(rlLopRJ( zSi%hvYOH81IioQHo-H7R+7;pXB|A z7J}k+i}eet*FNRO{KF(!9$(>pq+)9ul0_hx)QwR*a;7JoP)W1uhIj7^WYDs$So#uY z;3UhHoP?SVM?@-ZLw!Mc6hh2nz4_E6up~)oF*?1>f#3mg(Do{T(Fml>+PvPkkM=Y5 z9ha^zL6-R0Z@zc-klv$M$|UAoYTDaEvhX7IZ1>l{ZX36Cc+DuLZX8vStx9P-nU^x} zm^tqTJK+WhC2xK>xue>3I4w46ozK_(hKD!GyhFWeMRH;ai6_o(GhVuIPAEP_ki>hwXvKwVsxb90l)h}Cn$A9?@Ow;GS7jPk`SK z?!%{wmDo;}36~SS$ymnh04Y}8>AOz}I>V554;kq=w~63#Jl90=F3QbdxTZ&VJn-Mk z^`eCJ>AZFtkLP}F=UND=OZ?9(Jc&WqQk#svy1*AZNp0c#`y9PMa{kr&i8w=;@+V%9R2tMxVq%QiJ>-4QcQ!M=( zN5t^#S>qAqmrPT>g5?~%s&C2Do&)`E+X;~r4=%1F*e?Z`bb^Jj-~E&RtROw_?8Xar z_ui8=2j+d`4pCy$yExK0OL=&*U|4kX->SOT-qG!TE7Al0j8<0?A)tBHN@DwNwO%LaHj9cZ;$P&p*A_ z>qyuo(@O}l$Fii9VJvH#pKGqD#G9HrwA12o^c*^|3+!uV^qN2aH_LF}^mFhY?hrZn zg!zIkS;^y!dvrW>TQJu5v<@ho0EK*_v6+bv`@?3yIF;ChY}d$F13z?{T5jdU9EZ;u zGt$>4Ly%7v--v$T_Jp z@?(X<`Z&|wN>pXB${>r4)IkY=bxefIrgr!f!!=O$j#^M0B1qkxA!OR>h>~1S>N1@? zI+BM^3Y5Xl03+NUDx0LzQ0xGKd+Ag0k?~X;%UK+O!_rUm7+wZqn-=fDzcPh7h_ZhY zVa&=AHH)V&yPB#C%uo6)?e;t}xSxrXs4m3`Fl2oauo=M;!ba+ttHPU{o{Y6Jd&G1m z8D}tfhue&RvHfe7Cn2c~K5b%nMj%#8nSffUfli1lENGZu@+pjjiRAySSIAehHP*Tz zRN}vm+_?<5+roUy|DlntP=AbaWx6;ng=A~uU$f?!(V@J%(SOHaRB;+$t>H<}O~OE| zPVZZ}8J$xwM4h8T?YtTkSMxF`{-Zc8EtQy=C?LF}5ZxN-;euL!6@MW_vXi0lHo{qD($5oDa2t`2nK{~H@r2%Ith7GM0U!VM%j zSybtnx&!b(kRRb}+u3Q7ca|irRRpgC_L;pO4m0c7eoAbEC%-iKLe)XJMlnGfDx-Kb z;^d=oo<%$*t3`~?QZBJgVB#PZcYJ%RnbE}an{f&v#-uIaRNyjJBPb2xH62>G>W&jt zx){w}gU%B(V%0;9>ahdJyqAIo7KadMmJ*(?FYQe+5}3LY$D0RawyAGUEZJLv4!^&H1zAm_sFaW9tFQ`d^orUhi0Ukk|IY+42Hu{oZo0c$_6e zY>D!ami-i^DkLmYB&AkhS#yh~J75B-6&Kjr0a6x+S*%*EDReesOiT!^HdVm_@t4Ev z78=+n#J0=rnBaHHCf$5NbLIsfoUEhKJTvEou#os%6YievE=xLi*gCQ?nSg05*38AS zl^B9}rs=J7Bq+N8kYBH)-mJ|9qucr9Ty?W6aiub!m+8r@VsJsrPw5RMt7C>3H@Sk0 zSt13oM@MqO;v5&&5d6s)alRV1xGBD7Qi=%PCZy`qO%s6-Tu)siDzVn+ZH}0&ostcZT_Q&PEdo-xY8F4)uDSX@k=z!qas6j+ zA0u`B*=fg3;Bn;D_7TI0X(~_?VeWIwF+i8CM=fuu^(5>cJ2uTAcO_#WKm4xmdzHf9 zsu8Mvu!s{o9gtdt<)_{z2OZ)OotHLPg@cxpwx$vvwr7W(LFcrTM*wLGN&!cU?7-`a zTJb+>3qHH;FyYJC1>`fKGRTPu!FT{=Q`xL}2=-65Mlc86G~$3GT^0r$6d53t_z$NxGzS@Uj%T)fW4P1F>X}4dvn7~AEu0Ohm5EDV^SXl`hedq4Jh%kbHD8lx!q55i&Y_^^tQK`GyV_BY5&XT!{ zPHmQeNRG_eLpDPSIjFokU&d@O$3S3e*L~S|trX?sevNYHn*wge)MwkKB1JM|d5kwl z<|mXI_;>{C_Xs|)?}9m_xOj^cy#_g|WKZ@&5ju!%l)9J^F_~cEp`Gq=p=?rOB5|P^ z&XE+4uMiWv=N{{EN0_59H4(54jg?DqT{66NzGYM+3>jdG5sp&h6lG(U0b+}gH+$hI zE;BsWlA^*1l=@p+f!!FIs>c85hBsiAcD%Ee{CGc%z}YKb0`>*5>KS8vjvnF&WF96Y zNChAIQuy1Z#~KCz#X&}@pV#R?xY3(ILymKCrZqTg@)A1gE_EAk+-vomar`ptCde7%Y7tr zlwY!mDnru{YAs2UdsiSq)AP{vkI%`hWPUHCyI80b3vm^DkIxg{xL=M7Yo-2N6k&p0 z@5<>^)SVY`OT&p}wv%))0cmhFo?WO#qD9seM3%<9K5uU8NEv~{-}O^X`@KY|8Vw24 z$w=h81%bs*93^?Ql{wZbX_2i9obh@CD7+NxDxPsh)y95t{(}%I4v`6R(Gs34K~2rU zEppnVTUpXipB)>w6ZB8QJnFzmBF;D7zcnZiQBxSXvJfM3d+v~&@E zpUVnwtS@D!-H#BLY!%BAc<|X=g@6YK2q9?N(Oe?JCk%OtybM#Nk35$^N;4 z(p&db%YOiS(}OGn{+!eNk{9=qIY*KO7nb{P+~6OYJ9&|qm}3C(^AWpIe^ne|R%(6u z#dr!Pk1dkNDv?a3%!Nyc1v7|I%x57?C=LE6RZ26!JP{JBnd4}HA(1?wHef~kwL7r& z4PkKrd0(hecIb=r@FVE{R={bL&6&{obWOAavVJZh_!`6;bNhuE>pxevI^2=j;C06o}m-|t^a1DUdu6#a&ZVmDBJH$bTXjqj{8PUqkwaJ8vsA>aF-;mzd5&z+ z9Hw+r5_Wz4t=LKy2prrvM{OOW?YRUuE-adYM{AK39_~;i`(bF9#toT|%yYk0;W4$_ zYgxC?#@~s25%=sqzq8%M#_qsQSx~2JQl~6 zleouClA1`Llr$A2Uru%464+qZf`C%q_a2c;@4TrCNMmwL?Lp?_2#%v|f~Vo&ygw8r zo@y{derfH817sd!ipd<B$dGe$kZ|fHNaUq^j5oDa1 z86LIu-E>CMowy&kvw8aR7&w*-dDJfA0od+Ckelwrp?`5k(G(i8&qHTzD#Hi%6A{t% zLF?E<)C7(;;hf>O*bDnHHF9!ic+f!Ycz`f9OIe%^p$`hko{4046XeXT{!=Cm26#e- zY!ZLkENIbpl!TzARzPvOf$D6O2YoL~3^*|DS~YXDcyb3#wMOLJ3@me%b z>7kQ({=V#1E#$)AMaYyMyM+`q9$1}AKysJOUt;R}`KdS#E@&%0x)Q?n@mzRbh;hY# zL9!>u4h$}kJ^ipOfv_AN)3}WmGjmtW@v{r(%`ciGVr^lbIJ6=gL;Jg-2J&BGS+tZYeO5zZMcWL{dm1&Sl93 z(bIN_WqumccN8C|4pxj=kcDOE~15i?533BpL#=El;{& z#hE!WL>|he+SKkM?ots9vTX+VZ+wZJ5&i0J>1SfR`5m6qc6`N6*jaGmFEbhi_ATL; zFp3oXQIN^5Pmh7!xR4Ey&EkPD(0go_l*B(s(tHRZ(O2qEEj( z-TrI6NxJ2zN8+JsfeAWxfJ&Ai)kDJ^Q!$T&Y9isC!}D2cd6fD9(HVxhGnv~DcUMTG zn75c@g>NQIRzFYE<_QJS^XI4AmD9Z>kb@c`9BDXuS-$Ik3fnYfxfV&U9xYanmfaqW zXdB)2anvI2oTDWF3M1rHv3vddyp`E+q9m)-2Ui{bU$Pt$JWNesZFRC8o1a!^JRJhB zzebEV5%T`3>PWFzu{GLTR>8*0+DzG-+o0tp!r1m3R)&(hm9}H`tH%qYk0PVtv1fcG z#$*fjC8VCzn3T30Q{?B`KS-IcRC-UF4#`6gBpXNBNo;+Jc#tUlx$47gu*H6 zs4{rpp&qEj-sYFKb{&rubp7W2naZFo_on?f-&+JH$}bHQBL4FR4z(Wa>*Npgyt1xm z5gIZX2g{8(l8a7vMwkl7XKYPQmAB~2`A#qV?fTelNniIbJ$O!X`;5XpRaTY8+via$ zb>tFU#L|Ve(*0X4maEI1#?ZBTGzGv@)+*p_o1%ZY)#ow8Lv2~MUg~80GSArg<7XIq z?J?hC(vr!Aax31n;se&_&e?20Nk`s92{ua%z{dowQV|o%OWif4E6hYPD4nggJ<%4n zbrJY-B&?QSv9ZX^W`WI*z$8!UIM)Cy)x{9^N#wiX^4iL%e?QLusX}n1ayBSkZ!X!$ z$K92s+#8!+`G3h3=b|WUT^^OW8zR@+|u>69}o?= ztk2J0wCQR7rYU>wa&nMgCGRGSmb|B}w@8M0k7vc|WV9l`Uu9r(qOQA}9& zAU&=vePJW8A{U=`8EIHX8tcI$-#JYi{pxI1d`+|T?U#|RK`o&zRh>&9@=~|+50Rlg z-WnMbk~6N!C?aAkvt(7HOd2pZ3djQ_qZ5th(wMHu6W72hKq#BX(Kmhkj@lbxuQA0e zB_6Vc^&p=RMG0uSPd{>P$ z*f=TLQD&d}%x8!5?U~gr`>7HQUM@kT>2ltv;!QPVCXrYM+xFTRrq{2VQs%E}(?wig zd`M z*3yKNl~|toan9@6XKZtnJ>qqm15(?F&7{{E-K-0;3CW zjt=3ZU4rnU7S;t(63sbp3$IIqQ|O*Nr(J?Vd~wur!CODceEn)BotKHW&vhp`E{fue z*GqL4vJ(2uL3CZQZ`m2nnxfSPlR8AfK4i%0)6`lz$0qksvlm^>Sulc2I$W&w@y zW(5YYGL__jqQ)VrLlHMKv_xTzI=T)sI+h^lL+YTj^j{?Q)*yUF>QUz zCjomAo*}c$Gw+o~IUc>x0$bE_rdu7a)xa#57>$rLBU?*g=CS9FH`)8->StIbrkLAp zeYVeoS&1eNiMglXlb*D)a$R%CTr#Bu{MUa@HwqPpD0M zro{qjyx-d4=2tGH8vG43Nm184M_qUQEt~gV(9G=ShbOL6w{~O5;*KsMCxI5CNdDuW z^hBzkICBOO_7dRMjd#Eq>px%%gchI5R1#Uw1es}H`^@&m&$IK7B0CPgn zi^4z$Y24R&f%bg6A9q^roc*kwWb-)t2)!6pu<~0$a9cY0&0ck76Khai8t&QBZWdq&>HGsHC+1 zB}9IgeFXF8#g3FrPT`uy?>c#p7QM3Xwk?hQngJhI3qo>mf?o_q9N{Rp7}?#6z{lH3)sTmq|mSm0F&NRzpG=iOGNp>0F-bw;7%IWz9h*0YZr zWKN=t62CwX5N6Q(#y9>J#2JE)nDxFsc(JFKfOJ*WOq|wLHiwhp8)n|gxUyH_I4C7^ zHV7;fDrSWqEZoJxlG9%Rgs*{!>U-=sGg9U#SkcYH-0QGs9b({BG<#e{ zR1q&q!W3=_d^Z|`AtR&U*BS+gIVnA}=|IA3k%GKgEwJvu{p~wUp7CRuA6pU=!scZk zqFhuv59Oj!-Cetj!g1H{qcbpSC_xe4T)3Q4y2TOyiGf*I9*$7Ydr&2bR3D~)E&Rr8CCW9_Fu&nFWx`1lSl_jJ|Es^D(8sRJg{N=qf z-0QuU#i-?^YN$N7BNI6{Rzj%lQY0AGk-egIPS&{V*7_mF@f#~AW!$+>Hk+IYd?|sb zt5~Cov$;M-1lGW1axMUrxi1}$QD&`L-$HOo1d5vtC47m={_Z#nz~NTA=-Zn}OUS_1 zb;j;B@jj%Y$ADlhp)JvP0AucSoAaWQpyBE`XKQKJB2|U;YO=M8ub7KIL)y|dIA@zhfX|nD26Xy${#cI*fkfN7p&lu4%ekyTw z8mQb@p<^?~CtSN+-DZlWbnZ=BPRRH@_k0m4Fi=+!*dhjVUctbqxk5b2d9dN!msWHA zPqDvLvnjP!!RH)`t-e-SbgJGFeO5kS5if_9j>@S9Niij`+JZO-gcO8SRUQI%Hbxoy zrY^Rv`cGKJbNe?XRqC*%+4(r3H20R?Vp_-6gl#IRvWkFBAQX+-vf$19YpC;ekqTE++& z>#;kYg%Z>)rpczZk>Ib@5*+aUTV^b-G8^0p+Abt{tC~dDok^jQC4_i`z*?z-$Ae;h zR&Gj^a%~(TgeAUbm1~?7f9q(G-#kB5vSI1BzXF_azS{6{L5gtd`Cr2`y+1k88Z*tj z5O(zHOco0KO+=vqSY>h-IW>8_W%UGlcQtihEl+yoZpQuSN&t!fI^#dn=x(=rkp(vO ze3~fpXw9@gxbtA8&|vq`g#7GI4$Bra3eN1E#l+}9 zbOPp<1Z0=c{lQ;btZmxpXRbllD#d+Y@8mI?s2``ZaE=F04_zAHOH2cS>ZV|ATCy5* z<_l?~r7(s?V zh=);qU?GCyEl!oqL{v}o5>76<>+z$BSg0pTCTvvA!Q0`N-vJ?&?Qj!vO3}4{(Ea?Q z3E)^%WgI}U0(P^x0JANUl0oyoHBIhHjN4NEU8!3MAv`X|EYg9(xCx5@AH#x)P-0LC zT_U8^>MXJ`(jfNq5N^?-qJC|*2FE}maKfc%t-vZ9x7A3WSRJF~>XD=ER)xzp29=Q? z+cC9(F@{@`6CbaZq2zI$Pm6#(h&iVI%B~bVt%Ck$OMOT2AdcYZu$;YA59^xkYjsm= zb-t-B48E(I)mxKW|U2HN0f%!c8qkvcQIHEfjlhp71 z^vN--TYQ~mDyy4!KbgDly`4=rO&|LSc*HO1tAJKFI$f>F=&OO!>WyXpfdx}^0ZGj~ zy3LIb$36bTW>2wBiMQwq=M7vR!w?%%p^}dAJeW~b0+O;K!Jc8QMHIg=%dgKTwP9YU{|-`*7pzS`nb%sK}=E?n&UA&A50#NAwt zacIKHwz!X32kY=ME!3D#`k-^muk7Jw-vWGcyxesZ3T}*xs+ZcNfzbDIzxX)OUOhhzC#Z$~D!uYB zJaJW^l+`pv-87|M9$PE-$3O+xmDth-?76LE^cZaLyaHi2p%8M*%j(M zZ|a3>q*2;~K{3K7%OL+zvNaR2XrvTv1YoruE?h=Ibs@SeikC4c1@nEYOUT6luq)Qw zYt6++PU&a{oJp3}&YsR`5t7mQ|2pb9wU7V4jNczD$=tefCQHwzjU4VO_nh$5D$AU)4lENZf%@iHtL^HAkue((5Pa*HsG(4*sKOTi18=-)9{Zn*OhM8F&J|4#3PB?*O!b*}4` z3^q1XbTEwJR*h0u(+7vfe9PNa1TQ#@hAmi(G0YRjAqWv6C?6Wefh8(+&6WMKaE+I_ z2^ge4ymJfaOxR_Ly+*!UW8n@)PdO*Iw~WKBB5hVp#?gRL=QMk z_fjqNh(}yBaprF6l+m~_5fU+>(zBY}YlI(m%UwC(%jw!!FJaiI-d!zoO~c6;P9K(W z3J@l<9c_~`Y~%LU0BQNFhcXZPnsl~W%&$PsQ0uK~rM64;^f7G83v5Td z0El5LFP*bQH|#9{MF|b-P^(IzUqJ^{DT}_-WEqYvp$gn0gf9Q#;pTB#7wwdl(i*CO zXz%9*rhIClNpExLf=hx6`!E(wX2+LV&p2%LUS_8WJpb9h4*>Tb$T@3QB#t;sKG>y0 z-igg_yz=ny3M5f(ZCK|l`E+ke6ZW+xZRC^fpH{RA2vT-mm#xqz#xbKY&+z-T))?{w z3p6}tT&-ZdbF23T=%Du18=mFA5^K=F+>>YJw$6Hwn@x0x?aUCn@q2c`*3kPr7X?JQ z1bL@PGhG`NSnJ&Qz*|%A$^Js-Vm4aA#T|Nw+|w+jhGoW_I5Im9OkOjK_I8eGsWsi} z?qvy`ZzvJirCKh;D47@S3?Q{k!1_ve=Ud5Sio`r~UN3+WwVYqJf+i+>X z*ALrvG*8n8!MT`+tuGAla4z=T1GDiDrScHC?d;nznNJFAizAjlU>9L!^vxgN3#WMsCL;}VZ3|yd6J7pV*Bq;wNU>&jmDH_1ZmjIj zs9~X*+h;qdw-w8OO@-{uQu{z?`(JXytY+)L38A{l5A3zg#w|y6M-KZjQ}F6WjKa~| zD-DRP0HjDCFVow#jqA`sp`$9v9gPb?C)zf_iu)kLMY{DV%(x_TQ9};P`hD4PeziKQ z_c|vL1_mE{euYReO*9tHsMjxRRsMK`yQIaxd_MwbZL)t?ot58mt-{`ZD=+2>OJ<}cWMrtb07Rg*V6%r1^zj4CFdtGH^V z{`=hS@g_Gi9>V6=eVmKFhbyCnE?&9}To%wc;g=LR^$47@XNB9q?mbtXD@>mkbh5BR z_Y3V8w&+-Fysz>5;m!6oo1C0NA@@ep|8;ckVKL_a|G!UjJ~T5;HPw`RIu50#qa?Yf z(n)j>LYS!}gege~_e`fz$)HFqQ;M9&IkvU;R4TMgiA`EN5n87mu{M@Zzxn>I>;7}D z>;7Y|>-B!$&%@(It&$4xEq{(oJGl1idR!&{+!gvaG(H`2RG)P8Yy&@^^DYdx?192J z;4>op=VW0K)1;dx;r6W}2QfjGC`YYg)) zH;5hhfGrR%j@T2b#+*j=!3FJ~(eSFeFtA${stxdUnNUsA!t@>`N^KKX76nQ4sXN1b zS_pnEoR+S!lf{q|^zw~G^nt&BG$?)f(A;W_E3gsZ*EFe0VRjfLRZq#*yA|hC1i!m= z19o|UAj9C6DxDOe_b|3iGPd1W2U&eQblmzhySl9o-4$}5Kw8rQ|K`I>4%Q)$*c_$p z4cy`#!8T&%l=lYv1-wG%NsR!Q;MV!SvFb#oMck93roGM%I2Q>Qxk!1H`BpAcgizMp zICQHy%tO`|D1*R$70>uzOJ10JW6?7YC=`P&`BhRMshva_$iKB?o0Oq}B%t)kN!(#T zI!C>vwJ}K~E*jYXBg8$1k??^|8M!aqXPv1~wA=_~1`}NZTCXCBt}M`ay=^ z2ipbfowU8rd;7zaUf$R*{qui$blu~Zj2|hAnP9;$4@-Xx9NaDm`M&?h@~To ziqMG(rHxuz>POzIFeR(0e3| znL4NM+KJU2_;nzHsjzx8Ijv)~r*u^%U{LELlq$j8H>=nB-m~!(tB%&5xkLs%XQDSp zl`Bu%7cX|>N;YEh3#LQPHfsZYtz5dIvjX?*})hF4Rsv z*8$@jN@Ui4zTdiwRgLi$4zu1eXFs$#k30H0hKxS^eH}oa`65JnZ&UE^({oNw|N127 zMYu5gTJmR0Q&?%a>qD0ejtT3$!d^6znphvX`-XF9$SIC4Vz*G@5S!Q1E5BE4v1cTt ze12Ft^J9B&bPGg&RA%9P<(IAP@;PPkem%7`4%T(jzA3-jL*7QRjuVH`t*v8Zbn8^{ zOR|%u1*H7Qua$r{vEvyOC$)GL%PGlxeFz;FtIDWOf-t+)P6}eLXkjCATME>MQz0f5 zsiN*{em=3w{WQR>5U>U9rEoz)8r44As3ZeyOj$ZT0gzc_^$nLb%+vl=ysOM9O~nG1 zi$o4SZ2+dRre?`41V)ZisUWUVUKwnm9;U&#vA4^`33ukeR8ATjAn)y*O_BMB_41ch z;$=<|{eC2;$Kt4Po6yPn62xst)MoF}Xb58lj2OZ>vt4>4_zN<85(Q0r_eR?1^zVHz ziB%BR9o!{wfmT1~w^8{+9f=&Et+}Xp&T?CrtQbG@T=0 zMJ+)2163)G*94gTI9uxDtlO+jB3~P!#S}%jQqlg;H7J2sN3jDMe!4a>2rnPTcdtlE zgQ5if)R@cr*3>nrB2sd9H3c|zD_u$SnV<2apNXPGtaiGx4*VirbHFxs`dyptm~pnn zio%P;lv9@mPaZ*_0e25^)uHD$UibSjFPrY%ii+IOUJ=fE7d9CPsk^}_KgS&aDm`}i zR2~V)&^%XVpo`@W8O_qjV_6yzd^wAEC)_%*Rif~8z`ZgFj~GOz@gZp;>CZ( zC5^@+W_|qj7}=kejt1PCm!k|8S47&2fqHV!h=4Pj7bTZDU0 zhlG5!QQAMubC#qW>D1_bQp1^p6VIdEIm$h0zv-zPgAU#RWIF2}JsD`ZZU0P1r3+uM zt^+vhl>u7oBj4|L*M(k*TSVlkCedzm2E3`(2Q6NU9BhVx7IdGG>1gsR+ zf@Lx6ZepK+S#M8j-eq4niu-)-fR+XAbzXj=BH~@R<*Pg;qb_WBL_xS^|3H`b>E{(7 zQ=9ct+~vdrt;J@^xJSZRlCOn@)!L~W7Ds%F;{fhME3G$--(C^-kyXClNWUg4CFLoZ zx;r@Fks|eFU)%%njgz(-C=&KwTd_;H^%fb){o4sjp2RuF#}wv;>}7ZtC@q(BD3;Gn zN*7cL-MB+c@D3=1lcSaNhZ6n#t0*wF8)L_JW8_Bch<(Q}{dz5tSFpKcAa$7hXn4hp zs@^JJ?Q^QlKG3xTP%pjW%ziSxZOKy*8MA#r3aSnJoRUyZ1L~=v-A84Mwdi{iPIA=_ z@|u{9D=H1@2X=DmYze>%ofw8)svE41 z)j~UB3Dti_6!WZw(yfY%{)@=JR5O*tlbl(6f2;MCV9~kNiS|W4XRlrLDOi{N`_rPq zX9r@KAplUD0L~6c7ksRxY_qALK)+AMSq14ut@-(lC%b-cWLgiDnUCPg3Xg9yzs)-a(2mZw=ccB z-Y*1fopMS#*Nj!bXB*w71Gb(G!=-`|6}VMRs(Wi+gw~#A{I?qno|ga^#{EFPx;Wnd z1kEd3M)^kwENpYSg5aoK9Y%Pkniv@X8G-ht*=QHCCoI30k^VEx20wo+1#4B{umJPR zlb5rEpw&xthwdLK(;U3F^k^aI-NrzqR>jmrNBGk@Yzyo;WP|ShGeTE2Q;Ts_6Ga4_!XD`#hrnAeJ~m}V|`*dZ(PQ> zKY#g*ON&~6`V>#O3x~0E1m#v|TS*ZL!0Gs}<9%9(Ej?jK>0Z(x`-NTm%QNdL%GCKC zD07|fMQCtu5j{`W`Fvf*Q@wnJTm6KQkzUa0H!}RXpreSp%-4r?o&krYrVCgK;P>n6 z0auJh+MY*sq)F7)oluz<^qvz|Tw(_d)1pn!?DEkP=e%;Nn+7i1xekI46G%j}f!nAn z3ecf{#iwk2$dVuvN3*IDPAdCP&4bIZLl5@U2I^Q@i--()w zicVys9dAWbPzth#GNc7lA}6Klt!^pZ=vs)w0&`LDrrxDr$sE$w3Q(I`?Mj})!exUK z@t6G$rESW4;e@$-ycM$LNhcMQ+F%4U54HOuI$T%}1j?+--2m&ej8-MsEO+3Uk0kl3 z+Ij>xQXO%dt?%g?f^-*roTrCVUo~cDu08UbWwxBcQy%w}O$wC34XBM5!AU8%YnGF6 zk!_Nk^ck~Y%YnxtE4JL>wEl$3=-(mA=>T)^Hz$jy060NO#&`{}WEWyOVivWHU}zL0 z8KWCe*o7F*AS}-VtTo|uH!a)&vo1ML3#>;7jD8Id8XP9C2bcz}!w6u%2Bp1nE{*WG zOlX_O>6Cn}L%EjrqI~P1k~;Q+9%s}J4!<7Mzlz0eXUU;2r|TgAnn*>rrVyx}1#y`7(qvY?lp)y0GH%?pDvgKNO>!g;Y|pY_^b~K4X#7 z00+I2(yvx#;Z?B}E~{~%hX4u*QXWc51)vYii#Ie_?>VtO%8?44oPq_w-?L(0SK zSp>7S7c@&X9f`Z|a$O(hSUgU2Tq>hJ=f>7{v@GeS?pVuIX_wMRS!VeKB9`SU9c%Fw zoIcN0*~}r?it*XYPTXeI;*=#AEv14ov800X1rRpiNF)y3l*Kgw!Y`Nvo=>gTlB(jo zA2r<_LPecK%*Z9^bR}(cnC-|z-YMAv!lt?2pF!Bx;*dE&dJ}+h3I04l!biDuBO;U9 z7||bPOnwHY+n^vhv?ZGYWE-c9gPt<=I_#Qoq5R)I*j z-u!LFrW5vLEhEqP>b#c9Gd||vHrLSev7k+d#_qGRu~iOFA?))@Z4yBH5u^1@5TxU5 zPXarM@%KrQZi4TLa#1jBzTTdLS;T=L2e8FOLQhoKD&_oQCJ3D4bcs0Am85bREx3z0 zks$*^xzm@Ms}xZ{zxK@iR~rMt7uMS6=dsNh0IL~h1}dYPh~RHprip%*kXhF#FQ~gH z1$;+qBb5NCr}vWZ-hxJLf$RdUey{BuBkg!up@L}RVR3Wn`Jwd}aAJF%KV+w^N~;H{ zS_l5$@t5v{cCu@sA{wrB&}cdLxo_v?I_}1(*;IktB>pf0 z1xko#WaSy*OEUHspy<**;CbVoN}{C_plSdbZnS1$06(7g3XK};H@^Z*)0f(zjQ?rD zcl>XaTC$@N#PO6_;M}g0^C3L$OcbS%c;!e?I#(@*wP6#Tl)1B%DNjCwYlsp%5mfMK z-tcG2NHvi4Py8!%&u2bk+<(EMN8Mz7NpuYm+n4k&PIf{ApP^uZ(q>f7>cl`}uD2ED zr?3C-ehKrj)Vu3m>iv~5S-?CME(1{+2*`?1axu}Gt(Dtf^Sy)04xyqRl8j{SlucNS zDpwpg3K|Fp41gB>W|d7)QNn>&52c~tkjy}q!E6k?DdJ{|sHW(Jiy}VW4IpDio15sY zX}E12LFN%XnAZNL-eJdMW~`Em$sT1YA?DpSj4+D|q^e;-uNy$_hfmXnwL&~`?H9He|KVY;7(>>$TW?AxS<4v7 zXlOqMA@_L~-_X^c^9SXORG-a5r#WkkQK>k&znQa-*cO??P$&hE(e3v;TL+~V>F-{D zxl7o2oj=W|lp8?>`cD<`<*{+n@z-IQ#J26Szm_NyK6QghBXwce?(dYhVW@R0n_b@Q zK(FVh>ghdNhyH#lBzk*x<(AxGU~rfndfCBCiI`Q##{_w3(K23uEFHL0{u-Df0&nhz zCo10nk1?wyO2=e9+aC~~pKR@f?pdQ1yi-P1591Y7wh?7Wysaza)#KC1NiI`r@Pwtq zpB^`mGqu|?_SjZ|Uj`0R6-LmoX!~4z`&=38CNMt_-LY0S_07LKjwkIb!*?$07%vWD z>}XM|^f-5bd2QHI=nbXGsYn?74zn7qw@Q|?*eER&hpUE*f5#nh{qkBPAk*H>^7K9g zT+P+4NC4Ogz_KseAIll+HI@4ljHw-r1dMi|fh3gJl7a#$OtP0{TI)FJsw`$%tJ3ki zjFpg5vUs3Go>F=tCdF|Jt8}`JP6U*T1cd^1Nv--(w|f2vBLTlYag$&b3#ss!=*h|e50|BSZfchZ$jU2f)M3MGIux`wVp{~rCx{eX(!^Pq(CWaM{gJbT)uP?HmzY~eB|Or-FXxUmC{dO zGoE2D>aIADE9QGfPxTugQu;VR)#aR{dy)o0#-LndVcgb#lH8wnZh62I2jlLj zGY;#!!NK~{8ek_2`}m58E+)FlS8={&aV7@k(QmX4m2X{a1Asx$;-+~BiI~l6ISToW zn_9-amO1wyj2Fl{a~rs604MOjO1F)XWBtIs6xvwI$5CDOp?*}Vl8j$4L!lOznwi!B9owctx>v6B@qB*~VU+oQ^@@L9U zA#rZQqte$m&%f^RUY2zk6p_Q;c2{C<(FI^T$*@&_E-PImv9YYUU%QlqpBBdi=3;q8V@+Q zMXs^Lwx<}c{f=H=E4x0c{`%iWHl!8qP(orOJJT#E4qMx~fE@)t;kj*XuV*P_kT9Em z0;S)SaT{f-fH!VNs&oClR}<{!k*WMG1(MBDn; z@QC*1hzuGWrkCfOQy*u_{@#KoO6hZchtYrXfOT8WTl61^-%GU7&+;X5`@!K)s=XG~ zt5_2~#%&+8R!c;fnV3+yiCn04I8kp?sr{u@20cfbiM1t z+MmiTyhhtA-01^ahviCEG|KGI7Sv%Kr@k!D*7opZ%-rW!#%3^goGK|r8M>#DJ1}5P z5NCv%G_sXyOa>~4pFSce8LuqO1wDS_;NLhkgY+uA9=*R@p`z+dS1-@=nAe6fKiDqcqTPGC zGW{M?7+DD4&tCinV-CoWEAJ%lZGj;p;|=ltSL4rbeW{%oldpxSN=ln+=>$ceJMX#mr}da(v13;=?{QHYo6N!O@q?cKnrQZ~5$N#XS+Qutiu^Z?Rr^ zdXJQnW^sw%$Upx%)+U1896)cttDoVJ>A1Va8+yjc8H(31{Vh3;ATyP@qWWBq>-Aql zPGm@b{DfN}Aji_ZxfQpHQ2uW=*cT(^1j;RwiD^LCoKhQG->k&_(%nq|tmNjDhL=iY z%1M{zUMCE)vz>A+FDNOZyqXs}2u|L3JpNdIPRapE?>xq_gSiu-SN4Az4W~^mROqr+ zwMEceBu{Mv%G2-uX771|BlmgH+@Bvjc%wEEiFxGGH0VIZ8s8>2Mp8M{elLd7I@amR z@m}`41Ct;jGlz3V2}18>18SegS(Oq=XP~HeJ#zSB`O^hjL)9UVMbn4OX;Irqrl1bo ze#$bvlEt42*=BL>fm12ajtpgZ5m`x%UBc=1bU;NRZ-W^1gM! z8vdc21zmxDnX#h3@J9ZoSB8sg0^0w%|GVzkyV|df&P4UIl@Hj7_W~j1K<;0Ix6e#V zVDJMwJDNX{(8H_AaHhD!SW3xgxdf8zM+_YT=SnFwVQT4PBM3D-Y!ELx%-(M+`>tdCjnL zW$i~yw(3|38J|WQ0AR*OQ(2hjdA*zcx@*HH?7_$(9huaF=^`P;f#V>ldve#2jeo>M z{lt*fY>b0i`)vtUZnw{ER&=$to$Wa)Yip3!w3&_hT1Agjg$w8Q30f^tW}QT}>Z0Uy z)c3Jg0-_QNS0iwTelcuc<=HLWsxzLClAY%`3S9_)6yBSS)+?=gG5?r@; z3MTiLtMkLSuD_sf5^}G6(mUr=D-VIIQOmLBd) zYp_!Dc3-h1(>7%VM$Q2G<;7MKK#P%Fe3`G6+jpQ`sQ(4qb3vt+OZ`(0Q& z7$?*{v5^-`i@3@Ru0Hjm_{Z|)>gx$h(D07Fb_-UJ4709^F8UXpN|oZalSfT8xiMFc zgt5+X|Nx`vV3@w#xucsUS_a7Y|G{_L6V_Fd#v5D~T@x8fRbRk8}Vf zgKsZfApVD_LENX`n^hc52u=q=|0>(VkJ%>iuj~Z^)!s~Cbh(Yt-}dHj^&q$V>9cQN zt`j5`B|;6dUSWvS_myN}CBYFywf-N;wB}5>x!MIxcRmPY6)}#qloH83Eu{%f8M!T0%YFYcTc+;t2(6+YJ z#as?rngK9FzCL#QCNk>_&Q5ch)$}pflFcF!AbX+|mba^D)lTAI@okT%qJ7RtsjI^% z-Vuj8?2kj!F1!`6m;a^8&jwkTMCp*nsWAsO$;TwPMUnY-CMG&)D3x3}&X^O@ z`K$m%9K}k?R(qJ422(!>@|tiOe)Yb&Y!N?9}MLVs~ol0xKa7ox?>?g2~DP zprA*q=>>1*Yw4Tl72+;gO?Smae7&5JJD~U6=6CNPmJJOKh54OSR06HT71sgAE!{?B zZ|hi%rtWw5n|D+JY8m0w?R?G)=w9))d{JQ!>{01TU8sik&eIh;A6_Y^Wl70}1)$X> zDG4n|vvV3Qq6eFkub+=o={LeCgfYSs4QQS{o_c%vmLhcx0bqt@cg{14J*v|v$AVNA zah$SgahNFDB&Cd-fXRH3I8;$%J?SOn^v;-^qg}LL$)T`AdJ(Lah+k|dw5a%m#yXgrBwJ%lHxC+~sdY?Yz?XNnPp0a+4TvukTD>XMLmm}E*sGq5) zZqEmDowfF^LpNBL?zHVtD{$D*^IP`9HM~qS`nM6UbHK)G?-joCzi{KX4fC!YS&FTi z@nZ3Vv|Q}i#1M{I+%&M7=Pw+S<B|nRZy-pv?kaMYcJ1=Zw|_6ISi&5@6R6|v;KVaU zJGu5^>4BPtCz7ITS5Ez=%FR11{IR^9-_i;@wP2Jzyx5u|-ad*+-n?PJj3Lz<#E8+- zQX!pu9`EPt?r+2-gw=+G@^qoLihN>$uNUw&WJJD4U|R4}G)cbDvxwiQ>u~X`9A0TI zFD$}J+#Rv0w$W0cFi5rQf&?tk>Qj>j5J9jp4VLLohEnwmoo2;rb8KTaK;s>y6}wZj zmuFv3qpde7m*P_Au*p(N@ejt0>^1q8yUV1&oDxJA5oQl)FK%&v&ug!VZ7+r`jdYqs-NutU%*!%r}QEPruezYS}fE@<_5&|)DkRw@62U2#iUWXcA zs9m#IjjpP)WbvaDae;NhqFXjQ9!Q!EJb!px8a4 z_@)%zMj$kR+GnDq8J#EqNFf+}-R8ugl0W!>nRGghn4DG(thh)9P2frcc#H#hB|sNG z&x!FNJucfGtO4eul&Eo#skQM5h1Fl9Cj($k_Q%4N8JJT?seZ{d5FR} zL}}1^?s1{-{v3UzEBf^7sfm#>qC;RvJt@lo`s#o+hB>}Enz^gzU;w-m(nAS~NDG^i zG9WFv35QGm&7NL^1Q7XQiS+4ilno~OA{1Vn3`H%@n5~7qQ13Blve^Qeca5|Z@Hu9z zY0jOPVyPo}8g_sh;lELnRsW_p6(QF}h}pjBA1|5)C#?>HZ`31a^w$c$>8m7D7-AkC1#t_h1JGHXxYnO{3#+kZ$a z6Rp{%#98SfX>DGc>X9mE`wvnaG2s7Og~(B4jS}%Ze&F9O$SYj9*;JKrgJempOp7_N zBlo~m=XGZ{?#%w{fMW7N7IyH)$3q3D4xY;i+HM=q*1D}}%fbmb`}Q=FFSX;vt`O4{ zFM#dZ?d;fxoH5Z`%rsmMnU_?X&LJ65C)sh}*l5ZwlCyd;Vow2TNx(tZiQFHSr2PUC zWh4t&wWLQ_2o0Le8=d#q4#ft#voZ z6ciB|chcyfkI8DrmCduh99Au&w=Lf3sUzhiu+22U3LSaQR%XN-Zm5FkWr))x)vR4q zcnmKXN!h#sr(|6wcO}rhKZ;}jNnX>L9(soYX}!HPj8cP!{8&@)xnO^pO!IF6aVh#< zTlD=)C-0dMJ(e~Flbrh($ZRBgYss?}O%G-4c;i%i5&VY3WSMp>($z3?b}+e=L}JP^ zJ`kjEIHpjAE8+4!u{q@X4dPj7$x#4OnFh&Bw6*RNKCTJJ_!+Bz#%M8GI8z4AH&HE3 zVEEVRO_~+Cx}Cx8Ym2nW@Bj712+Au1P?A6;Ymm$YDnX`vKv1IIx(}Mq*R$XLVdq>UBR$`C#MdH*Dd+mvoEtcOZfJ`CGx~XvDg{p6aT1m)T zk2|e7b8Xihcq$b(8m|g*#_D$P0w=Vf`-1Pk{C2)B;|V=!t&aNEmSKPKqKq_i8g=Gt zNNiZ@11z;&O0VTK-uZ~2hXFppxRYP?cH^Z_doM-lE;a2(y#AwtM0ido*$f7!D;6zG zIJ0|&_R`D zQLM?go-f_I_g{}ox|2P9(N)OSH3_7lG>-4y6@>|DwhDx6$vcX|kWMcA2stv4V~TA) zPr$cb+*^4Q@Msgfl+XXgXY$x{Xe~;KR*=5(_|Z5gN_VsgHPbz3`zcg?=8`N%yZHv# zDFc?C)KAm-xE3K1!)cbfGPcYn*pF()`93aAjy5HinA)Pzg6Y{vZQ{nUyrNFR>u;>x zg2ULUW8kPLo0t|%PxZv1s34L~K+4vx9^YDDGElK1Va3M)k~oO8$OrDM_l=N*CcFl` zRvu>q7a}%ynP~py5snqHJtPH7X4=l7{Yb$&X&GzmIe%sX+l>mDTwH-6H zxpCV4Qrq1s+JoQ0A*pca_cm!Z5bo)$kacW2(&7J37du3D6_eL8t^ELpRh1Jekh3B} zllYzP)O2|DnFPx6d*nC`Il0X?_~x$iP0rQkZfr*4zsJFvEGIgh{qm0Os(XkFhjbx< zat6P^R~-62g^bID9|P20ica0x&XW&2*O@vk&J?p`q*w{EkYoRb4$=*?BwG5MSc}gJ zN;Vmp>vrUv5jrQ?MUzb{Wx{H6{y^9LpbYj>051*nlEtDbNn4*n_4yKsg_6QwwMJ<; z(I{oZ2z<60U^PU%)R8?k1gn*ZdSd_hB;>2}ao|u!F%OHc1$!u4^6gIU+k8vY;dub- zx4yCxd@$_nZV3UAjK0CThEVCw=2XsD1|x9^%i+c zr94lRf5F9jdOqWFF>>yp;|xOL03fK;`%^9{TGMK#iEnq{!AzH`l}1=WkeFR8okxaA6;&9Vz!>ic|`IfNb4_LOse>d(Nwxr7On7r4Zlq%*uWGm58e6(89+=STA_5n4F6~ z&eZ^=geHf6as!>Vf3wH-VsPu${@D&R>&!@jJd*Yis9FE(jGU>_Cg6t-n0x@dt3mV{ zO{WGV6Y1X?W``-^88|Ge*B=8Wyk{GO7c4w8<72QZCo1*Iok@F74<^%TnoYA4=&gpM zC6lGc&5rkc-}4>ZV2-tej^@B=*)#j7@1?;^^EHNySQyf8I^Q|`4&HC+&qi6d0^?`c z1QiO7F2sPqWQtgJo1&@uWdWN_VYhPNI!54nJlwKP!QhiU-n!rUQWf7z&z$Vgq)Eih z2Z1HJW-LTvpuU>-;f15W@xI~c{<%ZvGcg(2OBQzNrSgNs*nE>qvrYxZ#C?{VzPL*AhZF@Wzz`e($0c2uKOiS~renX0H0NGso|gHGH8OnnvJ zzXFz(lJ@G@DG()VTtx{~H`B>}xI}j8uGi8RRWneT8-+EbNN4s&`p6K0-xf#lvdKHP4bBo<{Rr$&U4rmc^H2 zX)5JDt?M4fzTwLcGQ5Cf{$hz{r6FWY%!lV#uk7C!A>WW)?#$+T@`QsqN?XoLkqlE^g0nuU{x0Ih2bQDnuE)? zef(wXpF1XI?vGPZ0}ED1@d5|s>bD6W7!y&A^&RB_XpoHT_rWkw@>k}4UDW}`5jEnN zHE;x{R^oDgs@LKsHan7N|J4T=->}K;ZW6YZRSU?P;5FAR_Hg4YUhq;Qm3lSx?$aY> zHSH}&b_bt5yd~TwJJ9*{Puu=CeKfe#t4{8!Sy;FFWWAfE?DTK4Qd?H-6RiqOr8TT| zyv5#@z2djX88qu9F<7PI;DJ|rI7cPn9_Lq{i;rVadVTfmBPDQ)m_dz}NNXKY5}G|s zb(86DmUB*~+M1V2G}l4=Ix#~f<(XgX!n ztS?K#+N=vrw18%Sd05A{3!Xrgu5s-tnL%ZK*DR z(^0ZWW&#g5ni|7GKCmBON|F7~1W-~$TjjxR*5?&H2@15MXZmf!ezo7JV1z3=cD?O&@bS^B`+8*y2#M8 zqSE00q_iuI2iW->JUv1La-s=`*!rRyLYeu#hoA!zvQM#mGLi+jDf=#WEUw?lrp8MNW61XxP5Q58mq&^rMcd~*=?Ar&M%||=jc7a%>AEAK;k{3) zN3J)oo;$I6&A!RJrEchsOBHEJZzEfyflv9Gd%?w`saMYy2^3OVs(3@*L51sIXMM`& zM1aEocIj880XTg`3w>F$ngnS3svQAgVoQhk?8Wjqg?hV#-IFN;y52;?r30&J;SRYs z?lE0)8xF_KCm_Ek!|U>)2bFGazb=TWSmt+FA8a{oX-;UTgAu4`#_hYGP&YQr|H*l^ zdvoY;5JWgz@8ne8KD*M{j}K8_6#xgCGtE*US}6lmd`^n0!%L5im|C#y5+zXEooiA@~mBg&{zjEfYl1omdsrc%UIG)O!jYj>Pnr! zE%cHoD}!Pw?Q?r+vN4={+E~fSAcWDn=a%oTd$^>6MKcDZwKow@O|&RE^LaQ;At7Zb zMH`~2>#a00N_Hc`jDwi2C;lq3>md-#EM;9oi>7MpUA`It3R&JD63eNPMkQltDSW5} zm?x5k(XM=^ZCJ36Co0Ez2~N9*ZHH^dXyM7gFl4As66NiJ>`&koz^@H7mu`xe>Q(ik zOW@Brwo=Gi3SNG<@tBuEkDBMj!AEj_xao+0QbREn?{53?@Izf&3f(5-1UWNW$taK& zLl%0FD~Q0AS9bkaKdi) zlN2ZR%MtTJ8ChgKY%`?q;urvuwLYXphfa-2s+zC3ShB!4Y$a5`j9=jc1)goYefdA; ze5}2ger2%9O1tOu(y^Ovt!Y;8x6F=D?@@~L%)kBV;_SY$v!fYVT{H7PJK&xfQJgKC zqvnn6J1neqpAg;UR$14~$|<|yfs=tlap6d4B^k|u~R?A$3*U|fdQv2@uqpy3qkn_gN9Wl4la$8iw^@{sZ9regD z@k6&x|C8?D?WukS<-r2ilK3I~t|!{PeRmTKp#_}qXqv0>V_D%@)qV-y&H*+Q-LE{RBZ;eXuua7aXFzGH!f~6x0)Lhkm-iy6hENtjCs-6 zmH#%*iAwnINrmAHrFG^9#hV3xO#FRx^UfWrzjshVSV(+9`$pf7t<%DsOSS)53>>9q zic4zR_FNmcm}M&Zjw*o{cvSOE-_hf|0%Tq;ZIOaBZM>4JRxOZR{z40r0doMI};MNDY#sm8~sGxZ3>6^OC zf(tKhdeq`)pQ<+Uex9EQ_P0O|e5$3nRiIG@4OBP;sl04&+7+mnCM!wH)bwuAY5_k? zDzd)R5@QN_6gJhcq*OC;SmYH{;ul0pF91CYaMu*o^y=WL104s?RPWsAi6l*T-3OgY zpAHTnLQFO5vl7l#YP8mt8rbhJ9;DIoMx7;`PV;D=RfliAsj}DA1~#kn=Qr>qR{i24 z`0hT{fE5}IO(GyvQeffLDt!cDgU&u8xlwAN- z&_&+PiOJB~)(hD~o$C?RhR-%Cjb*NXR9Uk=n1uQ_q+d3EA`ijBr(;= zF{@=U$Z_St@5LU5ivcYq0phZ%$t8PQVvhI69Q_=l@CSurc(0lF#i9Avo+wYT^Jr1# z2S;w2QpDy&O4J8=LHlohQcu;umgA9@EwhE)JQ!2i4-_x*Y;fjGoeA>$HZSRjKHC!U zSCDO;Xp^k$YvY4&S04P=@!)&^gC8Rg{`dL81Y!WJ44|t43NXO44afomX{CX@$v`PF z@3%2PKg#G=4UF3c<|FemECc%=g9WLVW7W%b?d1jZTF&m}FX**e*=xP2*QTUbP}6JM O)XTd~T1}+_GyWg>`$2gC diff --git a/install/img/box_top.gif b/install/img/box_top.gif deleted file mode 100644 index 4d912a4e85216b14394e7c92bf361e54ed6d8c31..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4865 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 - + 그누보드4 설치 (1/3) - 라이센스(License) - - -

 

-

 

-

 

-

 

- - - - - - - - - - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - -
라이센스(License) 내용을 반드시 확인하십시오.
- - - -
설치를 원하시면 위 내용에 동의하셔야 합니다.
- 동의를 원하시면 <예, 동의합니다> 버튼을 클릭해 주세요.
- - - - -
- - - - -
-
- - -
-
-
+
+
+ +
+ 동의에 선택하신 후 <다음> 버튼을 클릭해 주세요. +
+ +
diff --git a/install/install.inc.php b/install/install.inc.php index cb9073cf3..9cd1418d0 100644 --- a/install/install.inc.php +++ b/install/install.inc.php @@ -1,26 +1,29 @@ '; - echo '

프로그램이 이미 설치되어 있습니다.
새로 설치하시려면 dbconfig 파일을 삭제후 설치하시기 바랍니다.

'; +$dbconfig_file = $data_path.'/'.G4_DBCONFIG_FILE; +if (file_exists($dbconfig_file)) { + echo ''; + echo '

프로그램이 이미 설치되어 있습니다.
새로 설치하시려면 '.$dbconfig_file.' 파일을 삭제후 설치하시기 바랍니다.

'; exit; } // data 디렉토리가 있는가? -if (!is_dir('../data')) +if (!is_dir($data_path)) { - echo ''; - echo '

루트 디렉토리에 아래로 data 디렉토리를 생성하여 주십시오.
(common.php 파일이 있는곳이 루트 디렉토리 입니다.)

$> mkdir data

위 명령 실행후 다시 설치하여 주십시오.

'; + echo ''; + echo '

루트 디렉토리에 아래로 '.G4_DATA_DIR.' 디렉토리를 생성하여 주십시오.
(common.php 파일이 있는곳이 루트 디렉토리 입니다.)

$> mkdir '.G4_DATA_DIR.'

위 명령 실행후 다시 설치하여 주십시오.

'; exit; } // data 디렉토리에 파일 생성 가능한지 검사. -if (!(is_readable('../data') && is_writeable('../data') && is_executable('../data'))) +if (!(is_readable($data_path) && is_writeable($data_path) && is_executable($data_path))) { - echo ''; - echo '

data 디렉토리의 퍼미션을 707로 변경하여 주십시오.

$> chmod 707 data 또는 chmod uo+rwx data

위 명령 실행후 다시 설치하여 주십시오.

'; + echo ''.PHP_EOL; + echo '

'.G4_DATA_DIR.' 디렉토리의 퍼미션을 707로 변경하여 주십시오.

$> chmod 707 '.G4_DATA_DIR.' 또는 chmod uo+rwx '.G4_DATA_DIR.'

위 명령 실행후 다시 설치하여 주십시오.

'; exit; } ?> \ No newline at end of file diff --git a/install/install_config.php b/install/install_config.php index c75dbc769..56d7adef8 100644 --- a/install/install_config.php +++ b/install/install_config.php @@ -2,191 +2,151 @@ include_once ('../config.php'); include_once ('./install.inc.php'); -$gmnow = gmdate("D, d M Y H:i:s").' GMT'; -header("Expires: 0"); // rfc2616 - Section 14.21 -header("Last-Modified: " . $gmnow); -header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1 -header("Cache-Control: pre-check=0, post-check=0, max-age=0"); // HTTP/1.1 -header("Pragma: no-cache"); // HTTP/1.0 +$gmnow = gmdate('D, d M Y H:i:s').' GMT'; +header('Expires: 0'); // rfc2616 - Section 14.21 +header('Last-Modified: ' . $gmnow); +header('Cache-Control: no-store, no-cache, must-revalidate'); // HTTP/1.1 +header('Cache-Control: pre-check=0, post-check=0, max-age=0'); // HTTP/1.1 +header('Pragma: no-cache'); // HTTP/1.0 if ($_POST['agree'] != '동의함') { - echo ''; - echo << - alert('라이센스(License) 내용에 동의하셔야 설치를 계속하실 수 있습니다.'); - history.back(); - -HEREDOC; + echo ''.PHP_EOL; + echo '
라이센스(License) 내용에 동의하셔야 설치를 계속하실 수 있습니다.
'.PHP_EOL; + echo ''.PHP_EOL; exit; } ?> - + 그누보드4 설치 (2/3) - 설정 - + - -
-

 

-

 

-

 

-

 

- - - - - - - - - - - - - - -
- - -
- - - -
-
- - - - - -
MySQL 정보입력
-
- - - - - - - - - - - - - - - - - -
Host : 
User : 
Password : 
DB : 
최고관리자 정보입력
-
- - - - - - - - - - - - - - - - - -
ID : 
Password : 
Name : 
E-mail : 
- - - - - - - - - - -
이미 그누보드4가 존재한다면 DB 자료가 망실되므로 주의하십시오.
-
- - - - -
- -
-
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
MySQL 정보입력
Host + +
User + +
Password + +
DB + +
Port + +
가능한 변경하지 마십시오. +
TABLE명 접두사 + +
가능한 변경하지 마십시오. +
+
+ + + + + + + + + + + + + + + + + + + +
최고관리자 정보입력
회원 ID + +
패스워드 + +
이름 + +
E-mail + +
+ +

이미 그누보드4가 존재한다면 DB 자료가 망실되므로 주의하십시오.

+ + diff --git a/install/install_db.php b/install/install_db.php index 12d1bf90c..3060e3874 100644 --- a/install/install_db.php +++ b/install/install_db.php @@ -4,156 +4,59 @@ set_time_limit(0); include_once ('../config.php'); include_once ('./install.inc.php'); -$gmnow = gmdate("D, d M Y H:i:s") . " GMT"; -header("Expires: 0"); // rfc2616 - Section 14.21 -header("Last-Modified: " . $gmnow); -header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1 -header("Cache-Control: pre-check=0, post-check=0, max-age=0"); // HTTP/1.1 -header("Pragma: no-cache"); // HTTP/1.0 +$gmnow = gmdate('D, d M Y H:i:s') . ' GMT'; +header('Expires: 0'); // rfc2616 - Section 14.21 +header('Last-Modified: ' . $gmnow); +header('Cache-Control: no-store, no-cache, must-revalidate'); // HTTP/1.1 +header('Cache-Control: pre-check=0, post-check=0, max-age=0'); // HTTP/1.1 +header('Pragma: no-cache'); // HTTP/1.0 + +//print_r($_POST); exit; $mysql_host = $_POST['mysql_host']; $mysql_user = $_POST['mysql_user']; $mysql_pass = $_POST['mysql_pass']; $mysql_db = $_POST['mysql_db']; +$mysql_port = $_POST['mysql_port']; +$table_prefix= $_POST['table_prefix']; $admin_id = $_POST['admin_id']; $admin_pass = $_POST['admin_pass']; $admin_name = $_POST['admin_name']; $admin_email = $_POST['admin_email']; -if (strtolower($g4['charset']) == 'utf-8') @mysql_query("set names utf8"); -else if (strtolower($g4['charset']) == 'euc-kr') @mysql_query("set names euckr"); -$dblink = @mysql_connect($mysql_host, $mysql_user, $mysql_pass); +@mysql_query('set names utf8'); +$dblink = @mysql_connect($mysql_host.':'.$mysql_port, $mysql_user, $mysql_pass); if (!$dblink) { - echo ""; - echo ""; + echo ''.PHP_EOL; + echo '
MySQL Host, User, Password 를 확인해 주십시오.
'.PHP_EOL; + echo ''.PHP_EOL; exit; } -if (strtolower($g4['charset']) == 'utf-8') @mysql_query("set names utf8"); -else if (strtolower($g4['charset']) == 'euc-kr') @mysql_query("set names euckr"); +@mysql_query('set names utf8'); $select_db = @mysql_select_db($mysql_db, $dblink); if (!$select_db) { - echo ""; - echo ""; + echo ''.PHP_EOL; + echo '
MySQL DB 를 확인해 주십시오.
'.PHP_EOL; + echo ''.PHP_EOL; exit; } ?> - + 그누보드4 설치 (3/3) - DB - - -
-

 

-

 

-

 

-

 

- - - - - - - - - - - - - - -
- - -
- - - -
-
- - - - - - - - - - - - - - - - - - - - - - -
설치를 시작합니다. 설치중 작업을 중단하지 마십시오.
 
-          -
 
- - - - - - - - - - - - - - - - -
-
 
- - - - -
- - - - -
- -
-
+ +
그누보드4S 설치시작
document.frminstall2.job1.value='전체 테이블 생성중';"; -flush(); usleep(50000); - -for ($i=0; $i<45; $i++) -{ - echo "\n"; - flush(); - usleep(500); -} - -echo ""; -flush(); usleep(50000); +echo '
전체 테이블 생성 완료
'; $read_point = -1; $write_point = 5; @@ -181,7 +73,7 @@ $download_point = -20; //------------------------------------------------------------------------------------------------- // config 테이블 설정 -$sql = " insert into {$g4['config_table']} +$sql = " insert into `{$table_prefix}config` set cf_title = '그누보드4', cf_admin = '$admin_id', cf_use_point = '1', @@ -236,7 +128,7 @@ $sql = " insert into {$g4['config_table']} mysql_query($sql) or die(mysql_error() . "

" . $sql); // 운영자 회원가입 -$sql = " insert into {$g4['member_table']} +$sql = " insert into `{$table_prefix}member` set mb_id = '$admin_id', mb_password = PASSWORD('$admin_pass'), mb_name = '$admin_name', @@ -247,53 +139,74 @@ $sql = " insert into {$g4['member_table']} mb_open = '1', mb_email_certify = '".G4_TIME_YMDHIS."', mb_datetime = '".G4_TIME_YMDHIS."', - mb_ip = '$_SERVER[REMOTE_ADDR]' + mb_ip = '{$_SERVER['REMOTE_ADDR']}' "; @mysql_query($sql); -echo ""; -flush(); usleep(50000); +echo '

DB설정 완료
'; //------------------------------------------------------------------------------------------------- -// DB 설정 파일 생성 -$file = '../data/dbconfig.php'; -$f = @fopen($file, "w"); - -fwrite($f, ""); - -fclose($f); -@chmod($file, 0606); -echo ""; - -flush(); usleep(50000); - // 디렉토리 생성 $dir_arr = array ( - "../data", - "../data/cache", - "../data/cache/captcha", - "../data/cache/latest", - "../data/editor", - "../data/file", - "../data/log", - "../data/member", - "../data/session" + $data_path.'/cache', + $data_path.'/cache/captcha', + $data_path.'/cache/latest', + $data_path.'/editor', + $data_path.'/file', + $data_path.'/log', + $data_path.'/member', + $data_path.'/session' ); -for ($i=0; $i데이터 디렉토리 생성 완료'; +//------------------------------------------------------------------------------------------------- + +// DB 설정 파일 생성 +$file = '../'.G4_DATA_DIR.'/'.G4_DBCONFIG_FILE; +$f = @fopen($file, 'w'); + +fwrite($f, ""); + +fclose($f); +@chmod($file, 0606); +echo "
DB설정 파일 생성 완료 ($file)"; + // data 디렉토리 및 하위 디렉토리에서는 .htaccess .htpasswd .php .phtml .html .htm .inc .cgi .pl 파일을 실행할수 없게함. -$f = fopen("../data/.htaccess", "w"); +$f = fopen($data_path.'/.htaccess', 'w'); $str = << Order allow,deny @@ -304,17 +217,10 @@ fwrite($f, $str); fclose($f); //------------------------------------------------------------------------------------------------- -echo "\n"; -flush(); -sleep(1); - -echo ""; -echo ""; -flush(); usleep(50000); +echo '
필요한 DB Table, File, 디렉토리 생성을 모두 완료 하였습니다.
'.PHP_EOL; +echo '
메인화면에서 운영자 로그인을 한 후 운영자 화면으로 이동하여 환경설정을 변경해 주십시오.
'; +echo ''; ?> - - - \ No newline at end of file