From 24a73923c9ab17fb8a390f661186a49287e8c8b9 Mon Sep 17 00:00:00 2001 From: chi Date: Sun, 24 May 2020 21:23:29 +0900 Subject: [PATCH] =?UTF-8?q?=ED=86=B5=ED=95=A9,v2,v3=20=EC=86=94=EB=A3=A8?= =?UTF-8?q?=EC=85=98=20=ED=86=B5=ED=95=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 10 +- EnDec.vb => Union/EnDec.vb | 0 Form1.Designer.vb => Union/Form1.Designer.vb | 0 Form1.resx => Union/Form1.resx | 0 Form1.vb => Union/Form1.vb | 0 .../My Project}/Application.Designer.vb | 0 .../My Project}/Application.myapp | 0 .../My Project}/AssemblyInfo.vb | 0 .../My Project}/Resources.Designer.vb | 0 .../My Project}/Resources.resx | 0 .../My Project}/Settings.Designer.vb | 0 .../My Project}/Settings.settings | 0 MyAuth.vb => Union/MyAuth.vb | 0 MyINI2.vb => Union/MyINI2.vb | 0 ReadMe.txt => Union/ReadMe.txt | 0 인증날짜변경.vbproj => Union/Union.vbproj | 2 +- app.config => Union/app.config | 0 V2/.gitignore | 2 + V2/Form1.Designer.vb | 141 ++++++++++++ V2/Form1.resx | 120 ++++++++++ V2/Form1.vb | 91 ++++++++ V2/My Project/Application.Designer.vb | 38 ++++ V2/My Project/Application.myapp | 11 + V2/My Project/AssemblyInfo.vb | 35 +++ V2/My Project/Resources.Designer.vb | 63 ++++++ V2/My Project/Resources.resx | 117 ++++++++++ V2/My Project/Settings.Designer.vb | 73 ++++++ V2/My Project/Settings.settings | 7 + V2/v2.vbproj | 171 ++++++++++++++ V3/.gitignore | 2 + V3/Form1.Designer.vb | 213 ++++++++++++++++++ V3/Form1.resx | 120 ++++++++++ V3/Form1.vb | 105 +++++++++ V3/My Project/Application.Designer.vb | 38 ++++ V3/My Project/Application.myapp | 11 + V3/My Project/AssemblyInfo.vb | 35 +++ V3/My Project/Resources.Designer.vb | 63 ++++++ V3/My Project/Resources.resx | 117 ++++++++++ V3/My Project/Settings.Designer.vb | 73 ++++++ V3/My Project/Settings.settings | 7 + V3/UpgradeLog.XML | 27 +++ V3/v3.vbproj | 126 +++++++++++ V3/인증날짜변경.sln | 20 ++ 인증날짜변경.sln | 23 +- 인증날짜변경.suo | Bin 0 -> 19456 bytes 인증날짜변경.v12.suo | Bin 0 -> 114176 bytes 46 files changed, 1854 insertions(+), 7 deletions(-) rename EnDec.vb => Union/EnDec.vb (100%) rename Form1.Designer.vb => Union/Form1.Designer.vb (100%) rename Form1.resx => Union/Form1.resx (100%) rename Form1.vb => Union/Form1.vb (100%) rename {My Project => Union/My Project}/Application.Designer.vb (100%) rename {My Project => Union/My Project}/Application.myapp (100%) rename {My Project => Union/My Project}/AssemblyInfo.vb (100%) rename {My Project => Union/My Project}/Resources.Designer.vb (100%) rename {My Project => Union/My Project}/Resources.resx (100%) rename {My Project => Union/My Project}/Settings.Designer.vb (100%) rename {My Project => Union/My Project}/Settings.settings (100%) rename MyAuth.vb => Union/MyAuth.vb (100%) rename MyINI2.vb => Union/MyINI2.vb (100%) rename ReadMe.txt => Union/ReadMe.txt (100%) rename 인증날짜변경.vbproj => Union/Union.vbproj (98%) rename app.config => Union/app.config (100%) create mode 100644 V2/.gitignore create mode 100644 V2/Form1.Designer.vb create mode 100644 V2/Form1.resx create mode 100644 V2/Form1.vb create mode 100644 V2/My Project/Application.Designer.vb create mode 100644 V2/My Project/Application.myapp create mode 100644 V2/My Project/AssemblyInfo.vb create mode 100644 V2/My Project/Resources.Designer.vb create mode 100644 V2/My Project/Resources.resx create mode 100644 V2/My Project/Settings.Designer.vb create mode 100644 V2/My Project/Settings.settings create mode 100644 V2/v2.vbproj create mode 100644 V3/.gitignore create mode 100644 V3/Form1.Designer.vb create mode 100644 V3/Form1.resx create mode 100644 V3/Form1.vb create mode 100644 V3/My Project/Application.Designer.vb create mode 100644 V3/My Project/Application.myapp create mode 100644 V3/My Project/AssemblyInfo.vb create mode 100644 V3/My Project/Resources.Designer.vb create mode 100644 V3/My Project/Resources.resx create mode 100644 V3/My Project/Settings.Designer.vb create mode 100644 V3/My Project/Settings.settings create mode 100644 V3/UpgradeLog.XML create mode 100644 V3/v3.vbproj create mode 100644 V3/인증날짜변경.sln create mode 100644 인증날짜변경.suo create mode 100644 인증날짜변경.v12.suo diff --git a/.gitignore b/.gitignore index db8f9fe..e1bd2ba 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,7 @@ -/*.suo -/*.user -/* +bin +debug +obj +*.user +*.v12 +*.v11 +.vs \ No newline at end of file diff --git a/EnDec.vb b/Union/EnDec.vb similarity index 100% rename from EnDec.vb rename to Union/EnDec.vb diff --git a/Form1.Designer.vb b/Union/Form1.Designer.vb similarity index 100% rename from Form1.Designer.vb rename to Union/Form1.Designer.vb diff --git a/Form1.resx b/Union/Form1.resx similarity index 100% rename from Form1.resx rename to Union/Form1.resx diff --git a/Form1.vb b/Union/Form1.vb similarity index 100% rename from Form1.vb rename to Union/Form1.vb diff --git a/My Project/Application.Designer.vb b/Union/My Project/Application.Designer.vb similarity index 100% rename from My Project/Application.Designer.vb rename to Union/My Project/Application.Designer.vb diff --git a/My Project/Application.myapp b/Union/My Project/Application.myapp similarity index 100% rename from My Project/Application.myapp rename to Union/My Project/Application.myapp diff --git a/My Project/AssemblyInfo.vb b/Union/My Project/AssemblyInfo.vb similarity index 100% rename from My Project/AssemblyInfo.vb rename to Union/My Project/AssemblyInfo.vb diff --git a/My Project/Resources.Designer.vb b/Union/My Project/Resources.Designer.vb similarity index 100% rename from My Project/Resources.Designer.vb rename to Union/My Project/Resources.Designer.vb diff --git a/My Project/Resources.resx b/Union/My Project/Resources.resx similarity index 100% rename from My Project/Resources.resx rename to Union/My Project/Resources.resx diff --git a/My Project/Settings.Designer.vb b/Union/My Project/Settings.Designer.vb similarity index 100% rename from My Project/Settings.Designer.vb rename to Union/My Project/Settings.Designer.vb diff --git a/My Project/Settings.settings b/Union/My Project/Settings.settings similarity index 100% rename from My Project/Settings.settings rename to Union/My Project/Settings.settings diff --git a/MyAuth.vb b/Union/MyAuth.vb similarity index 100% rename from MyAuth.vb rename to Union/MyAuth.vb diff --git a/MyINI2.vb b/Union/MyINI2.vb similarity index 100% rename from MyINI2.vb rename to Union/MyINI2.vb diff --git a/ReadMe.txt b/Union/ReadMe.txt similarity index 100% rename from ReadMe.txt rename to Union/ReadMe.txt diff --git a/인증날짜변경.vbproj b/Union/Union.vbproj similarity index 98% rename from 인증날짜변경.vbproj rename to Union/Union.vbproj index 05bdf67..70b0b8d 100644 --- a/인증날짜변경.vbproj +++ b/Union/Union.vbproj @@ -52,7 +52,7 @@ false true true - ..\..\..\SIMP\전주번호찰인증키\ + ..\..\Runtime\전주번호찰인증키%28통합%29\ 인증날짜변경.xml 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022,42353,42354,42355 x86 diff --git a/app.config b/Union/app.config similarity index 100% rename from app.config rename to Union/app.config diff --git a/V2/.gitignore b/V2/.gitignore new file mode 100644 index 0000000..91d87f8 --- /dev/null +++ b/V2/.gitignore @@ -0,0 +1,2 @@ +/*.user +/*.suo diff --git a/V2/Form1.Designer.vb b/V2/Form1.Designer.vb new file mode 100644 index 0000000..536c024 --- /dev/null +++ b/V2/Form1.Designer.vb @@ -0,0 +1,141 @@ + _ +Partial Class Form1 + Inherits System.Windows.Forms.Form + + 'Form은 Dispose를 재정의하여 구성 요소 목록을 정리합니다. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + MyBase.Dispose(disposing) + End Sub + + 'Windows Form 디자이너에 필요합니다. + Private components As System.ComponentModel.IContainer + + '참고: 다음 프로시저는 Windows Form 디자이너에 필요합니다. + '수정하려면 Windows Form 디자이너를 사용하십시오. + '코드 편집기를 사용하여 수정하지 마십시오. + _ + Private Sub InitializeComponent() + Me.Button1 = New System.Windows.Forms.Button + Me.TextBox1 = New System.Windows.Forms.TextBox + Me.Label1 = New System.Windows.Forms.Label + Me.GroupBox1 = New System.Windows.Forms.GroupBox + Me.Label2 = New System.Windows.Forms.Label + Me.Button2 = New System.Windows.Forms.Button + Me.DateTimePicker1 = New System.Windows.Forms.DateTimePicker + Me.Label3 = New System.Windows.Forms.Label + Me.TextBox2 = New System.Windows.Forms.TextBox + Me.GroupBox1.SuspendLayout() + Me.SuspendLayout() + ' + 'Button1 + ' + Me.Button1.Location = New System.Drawing.Point(395, 15) + Me.Button1.Name = "Button1" + Me.Button1.Size = New System.Drawing.Size(58, 23) + Me.Button1.TabIndex = 0 + Me.Button1.Text = "찾기" + Me.Button1.UseVisualStyleBackColor = True + ' + 'TextBox1 + ' + Me.TextBox1.Location = New System.Drawing.Point(82, 17) + Me.TextBox1.Name = "TextBox1" + Me.TextBox1.Size = New System.Drawing.Size(307, 21) + Me.TextBox1.TabIndex = 1 + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(23, 20) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(53, 12) + Me.Label1.TabIndex = 2 + Me.Label1.Text = "대상파일" + ' + 'GroupBox1 + ' + Me.GroupBox1.Controls.Add(Me.Label2) + Me.GroupBox1.Location = New System.Drawing.Point(25, 51) + Me.GroupBox1.Name = "GroupBox1" + Me.GroupBox1.Size = New System.Drawing.Size(428, 82) + Me.GroupBox1.TabIndex = 3 + Me.GroupBox1.TabStop = False + Me.GroupBox1.Text = "현재정보" + ' + 'Label2 + ' + Me.Label2.Location = New System.Drawing.Point(18, 21) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(404, 32) + Me.Label2.TabIndex = 0 + Me.Label2.Text = "파일명 : " + ' + 'Button2 + ' + Me.Button2.Location = New System.Drawing.Point(231, 169) + Me.Button2.Name = "Button2" + Me.Button2.Size = New System.Drawing.Size(222, 20) + Me.Button2.TabIndex = 4 + Me.Button2.Text = "지정된 날짜로 변경" + Me.Button2.UseVisualStyleBackColor = True + ' + 'DateTimePicker1 + ' + Me.DateTimePicker1.Location = New System.Drawing.Point(25, 168) + Me.DateTimePicker1.Name = "DateTimePicker1" + Me.DateTimePicker1.Size = New System.Drawing.Size(200, 21) + Me.DateTimePicker1.TabIndex = 1 + ' + 'Label3 + ' + Me.Label3.Location = New System.Drawing.Point(23, 145) + Me.Label3.Name = "Label3" + Me.Label3.Size = New System.Drawing.Size(97, 17) + Me.Label3.TabIndex = 1 + Me.Label3.Text = "인증번호" + ' + 'TextBox2 + ' + Me.TextBox2.Location = New System.Drawing.Point(86, 142) + Me.TextBox2.Name = "TextBox2" + Me.TextBox2.Size = New System.Drawing.Size(366, 21) + Me.TextBox2.TabIndex = 5 + ' + 'Form1 + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(7.0!, 12.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(471, 196) + Me.Controls.Add(Me.TextBox2) + Me.Controls.Add(Me.Label3) + Me.Controls.Add(Me.DateTimePicker1) + Me.Controls.Add(Me.Button2) + Me.Controls.Add(Me.GroupBox1) + Me.Controls.Add(Me.Label1) + Me.Controls.Add(Me.TextBox1) + Me.Controls.Add(Me.Button1) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D + Me.MaximizeBox = False + Me.MinimizeBox = False + Me.Name = "Form1" + Me.Text = "전주번호찰 관리프로그램 인증날짜 변경(.net)" + Me.GroupBox1.ResumeLayout(False) + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents Button1 As System.Windows.Forms.Button + Friend WithEvents TextBox1 As System.Windows.Forms.TextBox + Friend WithEvents Label1 As System.Windows.Forms.Label + Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox + Friend WithEvents Label2 As System.Windows.Forms.Label + Friend WithEvents Button2 As System.Windows.Forms.Button + Friend WithEvents DateTimePicker1 As System.Windows.Forms.DateTimePicker + Friend WithEvents Label3 As System.Windows.Forms.Label + Friend WithEvents TextBox2 As System.Windows.Forms.TextBox + +End Class diff --git a/V2/Form1.resx b/V2/Form1.resx new file mode 100644 index 0000000..19dc0dd --- /dev/null +++ b/V2/Form1.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/V2/Form1.vb b/V2/Form1.vb new file mode 100644 index 0000000..f32dce9 --- /dev/null +++ b/V2/Form1.vb @@ -0,0 +1,91 @@ +Imports CommonClassv2 +Public Class Form1 + Dim install, installkey As Long + Dim fn As String + Dim auth As New MyAuthClass + + + ''' + ''' оɴϴ. + ''' + ''' + ''' + Private Function ReadAuth() As Boolean + + If install = 0 OrElse installkey = 0 Then + MsgBox(" ʽϴ." & vbCrLf & vbCrLf & "ڿ ϼ", MsgBoxStyle.Critical, "Ȯ") + ' Process.Start(HomePage) + Return False + End If + + If (auth.GetDateNumber(Now)) > install Then + MsgBox(" ʰǾϴ." & vbCrLf & vbCrLf & "ڿ ϼ", MsgBoxStyle.Critical, "Ȯ") + ' Process.Start(HomePage) + Return False '// ʰߴٸ + End If + + If installkey.ToString <> auth.GetDateNumberEnc(install) Then '// ջǾٸ + MsgBox(" ջǾϴ" & vbCrLf & vbCrLf & "ڿ ϼ", MsgBoxStyle.Critical, "Ȯ") + 'Process.Start(HomePage) + Return False + End If + Return True + ' MsgBox(auth.GetDateNumberEnc(Now)) + End Function + + Private Sub SetAuth(ByVal NewDate As Date) + Dim auth As New MyAuthClass + Dim Arinini As New MyINI(fn) + Arinini.Write("main", "install", auth.GetDateNumber(NewDate)) + Arinini.Write("main", "installkey", auth.GetDateNumberEnc(NewDate)) + + Dim A As New System.Text.StringBuilder + A.AppendLine(" Ͽ ϵǾϴ") + A.AppendLine("ϸ = " & fn) + A.AppendLine("ش ڿ ,ڵġ,ġ Ͽ") + A.AppendLine(" ϸ˴ϴ") + A.AppendLine("------------------") + A.AppendLine(" : " & Me.DateTimePicker1.Value.ToString) + + MsgBox(A.ToString, MsgBoxStyle.Information, "ϿϷ") + End Sub + + Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click + Dim A As New OpenFileDialog + A.Title = "⺻ Epole.ini ϼ" + A.FileName = "epole.ini" + A.DefaultExt = "*.ini" + A.Filter = "(*.INI)|*.ini" + A.FilterIndex = 0 + If A.ShowDialog = Windows.Forms.DialogResult.OK Then + fn = A.FileName + Me.TextBox1.Text = fn + Dim ini As New MyINI(fn) + Me.install = ini.Read("main", "install", -999) + Me.installkey = ini.Read("main", "installkey", -999) + + If install = -999 OrElse Me.installkey = -999 Then + MsgBox(" ƴմϴ", MsgBoxStyle.Critical, "Ȯ") + Return + End If + + Me.Button2.Enabled = True + + 'Label3.Text = " : " & auth.GetDateNumberEnc(install) + Label2.Text = "ϸ : " & fn + End If + End Sub + + + Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click + '// + Me.TextBox2.Text = Me.DateTimePicker1.Value.ToFileTimeUtc + If Me.TextBox1.Text.Trim = "" Then '//ϸ ׳ ֱ⸸Ѵ. + + ' Me.SetAuth(Me.DateTimePicker1.Value) + Else + Me.SetAuth(Me.DateTimePicker1.Value) + End If + + End Sub +End Class diff --git a/V2/My Project/Application.Designer.vb b/V2/My Project/Application.Designer.vb new file mode 100644 index 0000000..c514006 --- /dev/null +++ b/V2/My Project/Application.Designer.vb @@ -0,0 +1,38 @@ +'------------------------------------------------------------------------------ +' +' 이 코드는 도구를 사용하여 생성되었습니다. +' 런타임 버전:4.0.30319.42000 +' +' 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +' 이러한 변경 내용이 손실됩니다. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + '참고: 자동으로 생성되므로 직접 이 파일을 수정하지 마세요. 변경할 사항이 있거나 + ' 파일에서 빌드 오류가 발생하는 경우 프로젝트 디자이너로 + ' 이동([프로젝트 속성]으로 이동하거나 솔루션 탐색기에서 My Project 노드를 + '두 번 클릭)한 다음 [애플리케이션] 탭에서 변경하세요. + ' + Partial Friend Class MyApplication + + _ + Public Sub New() + MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows) + Me.IsSingleInstance = false + Me.EnableVisualStyles = true + Me.SaveMySettingsOnExit = true + Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses + End Sub + + _ + Protected Overrides Sub OnCreateMainForm() + Me.MainForm = Global.인증날짜변경.Form1 + End Sub + End Class +End Namespace diff --git a/V2/My Project/Application.myapp b/V2/My Project/Application.myapp new file mode 100644 index 0000000..1243847 --- /dev/null +++ b/V2/My Project/Application.myapp @@ -0,0 +1,11 @@ + + + true + Form1 + false + 0 + true + 0 + 0 + true + diff --git a/V2/My Project/AssemblyInfo.vb b/V2/My Project/AssemblyInfo.vb new file mode 100644 index 0000000..bc4e8a5 --- /dev/null +++ b/V2/My Project/AssemblyInfo.vb @@ -0,0 +1,35 @@ +Imports System +Imports System.Reflection +Imports System.Runtime.InteropServices + +' 어셈블리의 일반 정보는 다음 특성 집합을 통해 제어됩니다. +' 어셈블리와 관련된 정보를 수정하려면 +' 이 특성 값을 변경하십시오. + +' 어셈블리 특성 값을 검토합니다. + + + + + + + + + + +'이 프로젝트가 COM에 노출되는 경우 다음 GUID는 typelib의 ID를 나타냅니다. + + +' 어셈블리의 버전 정보는 다음 네 가지 값으로 구성됩니다. +' +' 주 버전 +' 부 버전 +' 빌드 번호 +' 수정 버전 +' +' 모든 값을 지정하거나 아래와 같이 '*'를 사용하여 빌드 번호 및 수정 버전이 자동으로 +' 지정되도록 할 수 있습니다. +' + + + diff --git a/V2/My Project/Resources.Designer.vb b/V2/My Project/Resources.Designer.vb new file mode 100644 index 0000000..fad88b6 --- /dev/null +++ b/V2/My Project/Resources.Designer.vb @@ -0,0 +1,63 @@ +'------------------------------------------------------------------------------ +' +' 이 코드는 도구를 사용하여 생성되었습니다. +' 런타임 버전:4.0.30319.42000 +' +' 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +' 이러한 변경 내용이 손실됩니다. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + +Imports System + +Namespace My.Resources + + '이 클래스는 ResGen 또는 Visual Studio와 같은 도구를 통해 StronglyTypedResourceBuilder + '클래스에서 자동으로 생성되었습니다. + '멤버를 추가하거나 제거하려면 .ResX 파일을 편집한 다음 /str 옵션을 사용하여 ResGen을 + '다시 실행하거나 VS 프로젝트를 다시 빌드하십시오. + ''' + ''' 지역화된 문자열 등을 찾기 위한 강력한 형식의 리소스 클래스입니다. + ''' + _ + Friend Module Resources + + Private resourceMan As Global.System.Resources.ResourceManager + + Private resourceCulture As Global.System.Globalization.CultureInfo + + ''' + ''' 이 클래스에서 사용하는 캐시된 ResourceManager 인스턴스를 반환합니다. + ''' + _ + Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager + Get + If Object.ReferenceEquals(resourceMan, Nothing) Then + Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("인증날짜변경.Resources", GetType(Resources).Assembly) + resourceMan = temp + End If + Return resourceMan + End Get + End Property + + ''' + ''' 이 강력한 형식의 리소스 클래스를 사용하여 모든 리소스 조회에 대해 현재 스레드의 CurrentUICulture 속성을 + ''' 재정의합니다. + ''' + _ + Friend Property Culture() As Global.System.Globalization.CultureInfo + Get + Return resourceCulture + End Get + Set + resourceCulture = value + End Set + End Property + End Module +End Namespace diff --git a/V2/My Project/Resources.resx b/V2/My Project/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/V2/My Project/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/V2/My Project/Settings.Designer.vb b/V2/My Project/Settings.Designer.vb new file mode 100644 index 0000000..20f6465 --- /dev/null +++ b/V2/My Project/Settings.Designer.vb @@ -0,0 +1,73 @@ +'------------------------------------------------------------------------------ +' +' 이 코드는 도구를 사용하여 생성되었습니다. +' 런타임 버전:4.0.30319.42000 +' +' 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +' 이러한 변경 내용이 손실됩니다. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + _ + Partial Friend NotInheritable Class MySettings + Inherits Global.System.Configuration.ApplicationSettingsBase + + Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) + +#Region "My.Settings 자동 저장 기능" +#If _MyType = "WindowsForms" Then + Private Shared addedHandler As Boolean + + Private Shared addedHandlerLockObject As New Object + + _ + Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs) + If My.Application.SaveMySettingsOnExit Then + My.Settings.Save() + End If + End Sub +#End If +#End Region + + Public Shared ReadOnly Property [Default]() As MySettings + Get + +#If _MyType = "WindowsForms" Then + If Not addedHandler Then + SyncLock addedHandlerLockObject + If Not addedHandler Then + AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings + addedHandler = True + End If + End SyncLock + End If +#End If + Return defaultInstance + End Get + End Property + End Class +End Namespace + +Namespace My + + _ + Friend Module MySettingsProperty + + _ + Friend ReadOnly Property Settings() As Global.인증날짜변경.My.MySettings + Get + Return Global.인증날짜변경.My.MySettings.Default + End Get + End Property + End Module +End Namespace diff --git a/V2/My Project/Settings.settings b/V2/My Project/Settings.settings new file mode 100644 index 0000000..85b890b --- /dev/null +++ b/V2/My Project/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/V2/v2.vbproj b/V2/v2.vbproj new file mode 100644 index 0000000..f5bf6b3 --- /dev/null +++ b/V2/v2.vbproj @@ -0,0 +1,171 @@ + + + + Debug + AnyCPU + 8.0.50727 + 2.0 + {042A2888-6EAC-479C-9D48-4314F0D8B760} + WinExe + 인증날짜변경.My.MyApplication + 인증날짜변경 + 인증날짜변경 + WindowsForms + false + + + + + + + 3.5 + 게시\ + true + Disk + false + Foreground + 7 + Days + false + false + true + 0 + 1.0.0.%2a + false + false + true + + + true + full + true + true + bin\Debug\ + 인증날짜변경.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022,42353,42354,42355 + + + pdbonly + false + true + true + ..\..\Runtime\전주번호찰인증키%28v2%29\ + 인증날짜변경.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022,42353,42354,42355 + + + + False + ..\..\DLLS\CommonClassv2.dll + + + + + + + + + + + + + + + + + + + + + + Form + + + Form1.vb + Form + + + + True + Application.myapp + + + True + True + Resources.resx + + + True + Settings.settings + True + + + + + Designer + Form1.vb + + + VbMyResourcesResXFileCodeGenerator + Resources.Designer.vb + My.Resources + Designer + + + + + MyApplicationCodeGenerator + Application.Designer.vb + + + SettingsSingleFileGenerator + My + Settings.Designer.vb + + + + + False + Microsoft .NET Framework 4%28x86 및 x64%29 + true + + + False + .NET Framework Client Profile + false + + + False + .NET Framework 2.0%28x86%29 + false + + + False + .NET Framework 3.0%28x86%29 + false + + + False + .NET Framework 3.5 + false + + + False + .NET Framework 3.5 SP1 + false + + + False + Windows Installer 4.5 + true + + + + + \ No newline at end of file diff --git a/V3/.gitignore b/V3/.gitignore new file mode 100644 index 0000000..4b66fab --- /dev/null +++ b/V3/.gitignore @@ -0,0 +1,2 @@ +/*.suo +/*.user diff --git a/V3/Form1.Designer.vb b/V3/Form1.Designer.vb new file mode 100644 index 0000000..bf62afd --- /dev/null +++ b/V3/Form1.Designer.vb @@ -0,0 +1,213 @@ + _ +Partial Class Form1 + Inherits System.Windows.Forms.Form + + 'Form은 Dispose를 재정의하여 구성 요소 목록을 정리합니다. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + MyBase.Dispose(disposing) + End Sub + + 'Windows Form 디자이너에 필요합니다. + Private components As System.ComponentModel.IContainer + + '참고: 다음 프로시저는 Windows Form 디자이너에 필요합니다. + '수정하려면 Windows Form 디자이너를 사용하십시오. + '코드 편집기를 사용하여 수정하지 마십시오. + _ + Private Sub InitializeComponent() + Me.Button2 = New System.Windows.Forms.Button + Me.DateTimePicker1 = New System.Windows.Forms.DateTimePicker + Me.tb_key1 = New System.Windows.Forms.TextBox + Me.Label1 = New System.Windows.Forms.Label + Me.GroupBox1 = New System.Windows.Forms.GroupBox + Me.GroupBox2 = New System.Windows.Forms.GroupBox + Me.CheckBox3 = New System.Windows.Forms.CheckBox + Me.CheckBox2 = New System.Windows.Forms.CheckBox + Me.CheckBox1 = New System.Windows.Forms.CheckBox + Me.chk1 = New System.Windows.Forms.CheckBox + Me.Button1 = New System.Windows.Forms.Button + Me.tb_key2 = New System.Windows.Forms.TextBox + Me.tb_ip = New System.Windows.Forms.TextBox + Me.Label2 = New System.Windows.Forms.Label + Me.GroupBox1.SuspendLayout() + Me.GroupBox2.SuspendLayout() + Me.SuspendLayout() + ' + 'Button2 + ' + Me.Button2.Location = New System.Drawing.Point(295, 26) + Me.Button2.Name = "Button2" + Me.Button2.Size = New System.Drawing.Size(181, 20) + Me.Button2.TabIndex = 4 + Me.Button2.Text = "인증번호1생성 ->" + Me.Button2.UseVisualStyleBackColor = True + ' + 'DateTimePicker1 + ' + Me.DateTimePicker1.Location = New System.Drawing.Point(89, 18) + Me.DateTimePicker1.Name = "DateTimePicker1" + Me.DateTimePicker1.Size = New System.Drawing.Size(200, 21) + Me.DateTimePicker1.TabIndex = 1 + ' + 'tb_key1 + ' + Me.tb_key1.Location = New System.Drawing.Point(482, 27) + Me.tb_key1.Name = "tb_key1" + Me.tb_key1.Size = New System.Drawing.Size(195, 21) + Me.tb_key1.TabIndex = 5 + ' + 'Label1 + ' + Me.Label1.Location = New System.Drawing.Point(16, 20) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(68, 17) + Me.Label1.TabIndex = 1 + Me.Label1.Text = "만기일" + Me.Label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter + ' + 'GroupBox1 + ' + Me.GroupBox1.Controls.Add(Me.Label2) + Me.GroupBox1.Controls.Add(Me.tb_ip) + Me.GroupBox1.Controls.Add(Me.Button2) + Me.GroupBox1.Controls.Add(Me.DateTimePicker1) + Me.GroupBox1.Controls.Add(Me.tb_key1) + Me.GroupBox1.Controls.Add(Me.Label1) + Me.GroupBox1.Location = New System.Drawing.Point(9, 12) + Me.GroupBox1.Name = "GroupBox1" + Me.GroupBox1.Size = New System.Drawing.Size(694, 67) + Me.GroupBox1.TabIndex = 6 + Me.GroupBox1.TabStop = False + Me.GroupBox1.Text = "인증번호1(사용기한설정)" + ' + 'GroupBox2 + ' + Me.GroupBox2.Controls.Add(Me.CheckBox3) + Me.GroupBox2.Controls.Add(Me.CheckBox2) + Me.GroupBox2.Controls.Add(Me.CheckBox1) + Me.GroupBox2.Controls.Add(Me.chk1) + Me.GroupBox2.Controls.Add(Me.Button1) + Me.GroupBox2.Controls.Add(Me.tb_key2) + Me.GroupBox2.Location = New System.Drawing.Point(9, 85) + Me.GroupBox2.Name = "GroupBox2" + Me.GroupBox2.Size = New System.Drawing.Size(694, 67) + Me.GroupBox2.TabIndex = 6 + Me.GroupBox2.TabStop = False + Me.GroupBox2.Text = "인증번호2(사용권한설정)" + ' + 'CheckBox3 + ' + Me.CheckBox3.AutoSize = True + Me.CheckBox3.Location = New System.Drawing.Point(119, 43) + Me.CheckBox3.Name = "CheckBox3" + Me.CheckBox3.Size = New System.Drawing.Size(88, 16) + Me.CheckBox3.TabIndex = 8 + Me.CheckBox3.Tag = "D" + Me.CheckBox3.Text = "SK네트웍스" + Me.CheckBox3.UseVisualStyleBackColor = True + ' + 'CheckBox2 + ' + Me.CheckBox2.AutoSize = True + Me.CheckBox2.Location = New System.Drawing.Point(17, 43) + Me.CheckBox2.Name = "CheckBox2" + Me.CheckBox2.Size = New System.Drawing.Size(60, 16) + Me.CheckBox2.TabIndex = 8 + Me.CheckBox2.Tag = "C" + Me.CheckBox2.Text = "정액등" + Me.CheckBox2.UseVisualStyleBackColor = True + ' + 'CheckBox1 + ' + Me.CheckBox1.AutoSize = True + Me.CheckBox1.Location = New System.Drawing.Point(119, 21) + Me.CheckBox1.Name = "CheckBox1" + Me.CheckBox1.Size = New System.Drawing.Size(60, 16) + Me.CheckBox1.TabIndex = 8 + Me.CheckBox1.Tag = "B" + Me.CheckBox1.Text = "가로등" + Me.CheckBox1.UseVisualStyleBackColor = True + ' + 'chk1 + ' + Me.chk1.AutoSize = True + Me.chk1.Location = New System.Drawing.Point(17, 21) + Me.chk1.Name = "chk1" + Me.chk1.Size = New System.Drawing.Size(96, 16) + Me.chk1.TabIndex = 8 + Me.chk1.Tag = "A" + Me.chk1.Text = "통신주번호찰" + Me.chk1.UseVisualStyleBackColor = True + ' + 'Button1 + ' + Me.Button1.Location = New System.Drawing.Point(297, 29) + Me.Button1.Name = "Button1" + Me.Button1.Size = New System.Drawing.Size(181, 20) + Me.Button1.TabIndex = 6 + Me.Button1.Text = "인증번호2생성 ->" + Me.Button1.UseVisualStyleBackColor = True + ' + 'tb_key2 + ' + Me.tb_key2.Location = New System.Drawing.Point(484, 30) + Me.tb_key2.Name = "tb_key2" + Me.tb_key2.Size = New System.Drawing.Size(195, 21) + Me.tb_key2.TabIndex = 7 + ' + 'tb_ip + ' + Me.tb_ip.Location = New System.Drawing.Point(89, 42) + Me.tb_ip.Name = "tb_ip" + Me.tb_ip.Size = New System.Drawing.Size(200, 21) + Me.tb_ip.TabIndex = 6 + Me.tb_ip.Text = "192.168.0.1" + ' + 'Label2 + ' + Me.Label2.Location = New System.Drawing.Point(16, 44) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(68, 17) + Me.Label2.TabIndex = 7 + Me.Label2.Text = "아이피(IP)" + Me.Label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter + ' + 'Form1 + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(7.0!, 12.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(715, 161) + Me.Controls.Add(Me.GroupBox2) + Me.Controls.Add(Me.GroupBox1) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Fixed3D + Me.MaximizeBox = False + Me.MinimizeBox = False + Me.Name = "Form1" + Me.Text = "통합 번호찰 관리프로그램 인증키 생성 V3 (tindevil@nate.com)" + Me.GroupBox1.ResumeLayout(False) + Me.GroupBox1.PerformLayout() + Me.GroupBox2.ResumeLayout(False) + Me.GroupBox2.PerformLayout() + Me.ResumeLayout(False) + + End Sub + Friend WithEvents Button2 As System.Windows.Forms.Button + Friend WithEvents DateTimePicker1 As System.Windows.Forms.DateTimePicker + Friend WithEvents tb_key1 As System.Windows.Forms.TextBox + Friend WithEvents Label1 As System.Windows.Forms.Label + Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox + Friend WithEvents GroupBox2 As System.Windows.Forms.GroupBox + Friend WithEvents Button1 As System.Windows.Forms.Button + Friend WithEvents tb_key2 As System.Windows.Forms.TextBox + Friend WithEvents chk1 As System.Windows.Forms.CheckBox + Friend WithEvents CheckBox3 As System.Windows.Forms.CheckBox + Friend WithEvents CheckBox2 As System.Windows.Forms.CheckBox + Friend WithEvents CheckBox1 As System.Windows.Forms.CheckBox + Friend WithEvents Label2 As System.Windows.Forms.Label + Friend WithEvents tb_ip As System.Windows.Forms.TextBox + +End Class diff --git a/V3/Form1.resx b/V3/Form1.resx new file mode 100644 index 0000000..19dc0dd --- /dev/null +++ b/V3/Form1.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/V3/Form1.vb b/V3/Form1.vb new file mode 100644 index 0000000..ae683d4 --- /dev/null +++ b/V3/Form1.vb @@ -0,0 +1,105 @@ +Imports CommonClassv2 +Public Class Form1 + Dim install, installkey As Long + Dim fn As String + Dim auth As New MyAuthClass + + + ''' + ''' оɴϴ. + ''' + ''' + ''' + Private Function ReadAuth() As Boolean + + If install = 0 OrElse installkey = 0 Then + MsgBox(" ʽϴ." & vbCrLf & vbCrLf & "ڿ ϼ", MsgBoxStyle.Critical, "Ȯ") + ' Process.Start(HomePage) + Return False + End If + + If (auth.GetDateNumber(Now)) > install Then + MsgBox(" ʰǾϴ." & vbCrLf & vbCrLf & "ڿ ϼ", MsgBoxStyle.Critical, "Ȯ") + ' Process.Start(HomePage) + Return False '// ʰߴٸ + End If + + If installkey.ToString <> auth.GetDateNumberEnc(install) Then '// ջǾٸ + MsgBox(" ջǾϴ" & vbCrLf & vbCrLf & "ڿ ϼ", MsgBoxStyle.Critical, "Ȯ") + 'Process.Start(HomePage) + Return False + End If + Return True + ' MsgBox(auth.GetDateNumberEnc(Now)) + End Function + + Private Sub SetAuth(ByVal NewDate As Date) + Dim auth As New MyAuthClass + Dim Arinini As New MyINI(fn) + Arinini.Write("main", "install", auth.GetDateNumber(NewDate)) + Arinini.Write("main", "installkey", auth.GetDateNumberEnc(NewDate)) + + Dim A As New System.Text.StringBuilder + A.AppendLine(" Ͽ ϵǾϴ") + A.AppendLine("ϸ = " & fn) + A.AppendLine("ش ڿ ,ڵġ,ġ Ͽ") + A.AppendLine(" ϸ˴ϴ") + A.AppendLine("------------------") + A.AppendLine(" : " & Me.DateTimePicker1.Value.ToString) + + MsgBox(A.ToString, MsgBoxStyle.Information, "ϿϷ") + End Sub + + Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click + '// + '//ip εӴ Ȯ + Dim IP() As String = Me.tb_ip.Text.Split(".") + If IP.Length <> 4 Then + MsgBox(" IPּü谡 ƴմϴ" & vbCrLf & "Ǵ 192.168.0.1 Դϴ", MsgBoxStyle.Information, "Ȯ") + Return + End If + + Dim ipsum As Short = 0 + For Each a As String In IP + If IsNumeric(a) = False Then + MsgBox("Ŭ ̴ ڷθ Էϼ." & vbCrLf & "Ǵ 192.168.0.1 Դϴ", MsgBoxStyle.Information, "Ȯ") + Return + Else + ipsum += Val(a) '//Ǹ Ѵ + End If + Next + Dim yymmdd As String = Format(Me.DateTimePicker1.Value.Date, "yyyyMMdd") + Me.tb_key1.Text = ipsum & "%" & yymmdd & yymmdd.GetHashCode + Dim Auth As New CEpole.Auth + If Auth.check_key1(Me.tb_key1.Text) = False Then + MsgBox("ȣ1α׷ ", MsgBoxStyle.Critical, "Ȯ") + End If + + End Sub + + Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + + + End Sub + + Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click + Dim key2 As String = "" + For Each C As Control In Me.GroupBox2.Controls + ' MsgBox(C.GetType.ToString) + If C.GetType.ToString.ToUpper = "SYSTEM.WINDOWS.FORMS.CHECKBOX" Then '//üũڽ ȮѴ. + If CType(C, CheckBox).Checked Then key2 &= C.Tag.ToString.ToUpper + End If + Next + If key2 = "" Then + Me.tb_key2.Text = "" + Else + Me.tb_key2.Text = key2 & "%" & key2.GetHashCode + Dim Auth As New CEpole.Auth + If Auth.Check_key2(Me.tb_key2.Text) = False Then + MsgBox("ȣ2α׷ ", MsgBoxStyle.Critical, "Ȯ") + End If + End If + + + End Sub +End Class diff --git a/V3/My Project/Application.Designer.vb b/V3/My Project/Application.Designer.vb new file mode 100644 index 0000000..c4ef2c5 --- /dev/null +++ b/V3/My Project/Application.Designer.vb @@ -0,0 +1,38 @@ +'------------------------------------------------------------------------------ +' +' 이 코드는 도구를 사용하여 생성되었습니다. +' 런타임 버전:4.0.30319.42000 +' +' 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +' 이러한 변경 내용이 손실됩니다. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + '참고: 자동으로 생성되므로 직접 이 파일을 수정하지 마십시오. 변경할 사항이 있거나 + ' 파일에서 빌드 오류가 발생하는 경우 프로젝트 디자이너로 + ' 이동([프로젝트 속성]으로 이동하거나 솔루션 탐색기에서 My Project 노드를 + ' 두 번 클릭)한 다음 [응용 프로그램] 탭에서 변경하십시오. + ' + Partial Friend Class MyApplication + + _ + Public Sub New() + MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows) + Me.IsSingleInstance = false + Me.EnableVisualStyles = true + Me.SaveMySettingsOnExit = true + Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses + End Sub + + _ + Protected Overrides Sub OnCreateMainForm() + Me.MainForm = Global.인증날짜변경.Form1 + End Sub + End Class +End Namespace diff --git a/V3/My Project/Application.myapp b/V3/My Project/Application.myapp new file mode 100644 index 0000000..1243847 --- /dev/null +++ b/V3/My Project/Application.myapp @@ -0,0 +1,11 @@ + + + true + Form1 + false + 0 + true + 0 + 0 + true + diff --git a/V3/My Project/AssemblyInfo.vb b/V3/My Project/AssemblyInfo.vb new file mode 100644 index 0000000..bc4e8a5 --- /dev/null +++ b/V3/My Project/AssemblyInfo.vb @@ -0,0 +1,35 @@ +Imports System +Imports System.Reflection +Imports System.Runtime.InteropServices + +' 어셈블리의 일반 정보는 다음 특성 집합을 통해 제어됩니다. +' 어셈블리와 관련된 정보를 수정하려면 +' 이 특성 값을 변경하십시오. + +' 어셈블리 특성 값을 검토합니다. + + + + + + + + + + +'이 프로젝트가 COM에 노출되는 경우 다음 GUID는 typelib의 ID를 나타냅니다. + + +' 어셈블리의 버전 정보는 다음 네 가지 값으로 구성됩니다. +' +' 주 버전 +' 부 버전 +' 빌드 번호 +' 수정 버전 +' +' 모든 값을 지정하거나 아래와 같이 '*'를 사용하여 빌드 번호 및 수정 버전이 자동으로 +' 지정되도록 할 수 있습니다. +' + + + diff --git a/V3/My Project/Resources.Designer.vb b/V3/My Project/Resources.Designer.vb new file mode 100644 index 0000000..6a6daf4 --- /dev/null +++ b/V3/My Project/Resources.Designer.vb @@ -0,0 +1,63 @@ +'------------------------------------------------------------------------------ +' +' 이 코드는 도구를 사용하여 생성되었습니다. +' 런타임 버전:4.0.30319.42000 +' +' 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +' 이러한 변경 내용이 손실됩니다. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + +Imports System + +Namespace My.Resources + + '이 클래스는 ResGen 또는 Visual Studio와 같은 도구를 통해 StronglyTypedResourceBuilder + '클래스에서 자동으로 생성되었습니다. + '멤버를 추가하거나 제거하려면 .ResX 파일을 편집한 다음 /str 옵션을 사용하여 ResGen을 + '다시 실행하거나 VS 프로젝트를 다시 빌드하십시오. + ''' + ''' 지역화된 문자열 등을 찾기 위한 강력한 형식의 리소스 클래스입니다. + ''' + _ + Friend Module Resources + + Private resourceMan As Global.System.Resources.ResourceManager + + Private resourceCulture As Global.System.Globalization.CultureInfo + + ''' + ''' 이 클래스에서 사용하는 캐시된 ResourceManager 인스턴스를 반환합니다. + ''' + _ + Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager + Get + If Object.ReferenceEquals(resourceMan, Nothing) Then + Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("인증날짜변경.Resources", GetType(Resources).Assembly) + resourceMan = temp + End If + Return resourceMan + End Get + End Property + + ''' + ''' 이 강력한 형식의 리소스 클래스를 사용하여 모든 리소스 조회에 대한 현재 스레드의 CurrentUICulture + ''' 속성을 재정의합니다. + ''' + _ + Friend Property Culture() As Global.System.Globalization.CultureInfo + Get + Return resourceCulture + End Get + Set + resourceCulture = value + End Set + End Property + End Module +End Namespace diff --git a/V3/My Project/Resources.resx b/V3/My Project/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/V3/My Project/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/V3/My Project/Settings.Designer.vb b/V3/My Project/Settings.Designer.vb new file mode 100644 index 0000000..c744111 --- /dev/null +++ b/V3/My Project/Settings.Designer.vb @@ -0,0 +1,73 @@ +'------------------------------------------------------------------------------ +' +' 이 코드는 도구를 사용하여 생성되었습니다. +' 런타임 버전:4.0.30319.42000 +' +' 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +' 이러한 변경 내용이 손실됩니다. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + _ + Partial Friend NotInheritable Class MySettings + Inherits Global.System.Configuration.ApplicationSettingsBase + + Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) + +#Region "My.Settings 자동 저장 기능" +#If _MyType = "WindowsForms" Then + Private Shared addedHandler As Boolean + + Private Shared addedHandlerLockObject As New Object + + _ + Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) + If My.Application.SaveMySettingsOnExit Then + My.Settings.Save() + End If + End Sub +#End If +#End Region + + Public Shared ReadOnly Property [Default]() As MySettings + Get + +#If _MyType = "WindowsForms" Then + If Not addedHandler Then + SyncLock addedHandlerLockObject + If Not addedHandler Then + AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings + addedHandler = True + End If + End SyncLock + End If +#End If + Return defaultInstance + End Get + End Property + End Class +End Namespace + +Namespace My + + _ + Friend Module MySettingsProperty + + _ + Friend ReadOnly Property Settings() As Global.인증날짜변경.My.MySettings + Get + Return Global.인증날짜변경.My.MySettings.Default + End Get + End Property + End Module +End Namespace diff --git a/V3/My Project/Settings.settings b/V3/My Project/Settings.settings new file mode 100644 index 0000000..85b890b --- /dev/null +++ b/V3/My Project/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/V3/UpgradeLog.XML b/V3/UpgradeLog.XML new file mode 100644 index 0000000..5b3f258 --- /dev/null +++ b/V3/UpgradeLog.XML @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/V3/v3.vbproj b/V3/v3.vbproj new file mode 100644 index 0000000..6813117 --- /dev/null +++ b/V3/v3.vbproj @@ -0,0 +1,126 @@ + + + + Debug + AnyCPU + 8.0.50727 + 2.0 + {D9C116F9-65B4-47E7-82DB-3DE4F3FDE1CF} + WinExe + 인증날짜변경.My.MyApplication + 인증날짜변경 + 인증날짜변경 + WindowsForms + false + + + + + + + 3.5 + 0 + v2.0 + + + true + full + true + true + bin\Debug\ + 인증날짜변경.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022,42353,42354,42355 + + + pdbonly + false + true + true + ..\..\Runtime\전주번호찰인증키%28v3%29\ + 인증날짜변경.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022,42353,42354,42355 + + + + False + ..\..\DLLS\CEpole.dll + + + False + ..\..\DLLS\CommonClassv2.dll + + + + + + + + + + + + + + + + + + + + + + + Form + + + Form1.vb + Form + + + + True + Application.myapp + + + True + True + Resources.resx + + + True + Settings.settings + True + + + + + Designer + Form1.vb + + + VbMyResourcesResXFileCodeGenerator + Resources.Designer.vb + My.Resources + Designer + + + + + MyApplicationCodeGenerator + Application.Designer.vb + + + SettingsSingleFileGenerator + My + Settings.Designer.vb + + + + + \ No newline at end of file diff --git a/V3/인증날짜변경.sln b/V3/인증날짜변경.sln new file mode 100644 index 0000000..aeb804c --- /dev/null +++ b/V3/인증날짜변경.sln @@ -0,0 +1,20 @@ + +Microsoft Visual Studio Solution File, Format Version 11.00 +# Visual Studio 2010 +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "인증날짜변경", "인증날짜변경.vbproj", "{B0CC37CF-1CE5-42B4-8E4D-863F8D45B2A2}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {B0CC37CF-1CE5-42B4-8E4D-863F8D45B2A2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B0CC37CF-1CE5-42B4-8E4D-863F8D45B2A2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B0CC37CF-1CE5-42B4-8E4D-863F8D45B2A2}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B0CC37CF-1CE5-42B4-8E4D-863F8D45B2A2}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/인증날짜변경.sln b/인증날짜변경.sln index aeb804c..3a04f14 100644 --- a/인증날짜변경.sln +++ b/인증날짜변경.sln @@ -1,7 +1,13 @@  -Microsoft Visual Studio Solution File, Format Version 11.00 -# Visual Studio 2010 -Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "인증날짜변경", "인증날짜변경.vbproj", "{B0CC37CF-1CE5-42B4-8E4D-863F8D45B2A2}" +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.29709.97 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Union", "Union\Union.vbproj", "{B0CC37CF-1CE5-42B4-8E4D-863F8D45B2A2}" +EndProject +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "v2", "V2\v2.vbproj", "{042A2888-6EAC-479C-9D48-4314F0D8B760}" +EndProject +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "v3", "V3\v3.vbproj", "{D9C116F9-65B4-47E7-82DB-3DE4F3FDE1CF}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -13,8 +19,19 @@ Global {B0CC37CF-1CE5-42B4-8E4D-863F8D45B2A2}.Debug|Any CPU.Build.0 = Debug|Any CPU {B0CC37CF-1CE5-42B4-8E4D-863F8D45B2A2}.Release|Any CPU.ActiveCfg = Release|Any CPU {B0CC37CF-1CE5-42B4-8E4D-863F8D45B2A2}.Release|Any CPU.Build.0 = Release|Any CPU + {042A2888-6EAC-479C-9D48-4314F0D8B760}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {042A2888-6EAC-479C-9D48-4314F0D8B760}.Debug|Any CPU.Build.0 = Debug|Any CPU + {042A2888-6EAC-479C-9D48-4314F0D8B760}.Release|Any CPU.ActiveCfg = Release|Any CPU + {042A2888-6EAC-479C-9D48-4314F0D8B760}.Release|Any CPU.Build.0 = Release|Any CPU + {D9C116F9-65B4-47E7-82DB-3DE4F3FDE1CF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D9C116F9-65B4-47E7-82DB-3DE4F3FDE1CF}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D9C116F9-65B4-47E7-82DB-3DE4F3FDE1CF}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D9C116F9-65B4-47E7-82DB-3DE4F3FDE1CF}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {C06208FE-6233-43E3-BA6C-8AAF7C738280} + EndGlobalSection EndGlobal diff --git a/인증날짜변경.suo b/인증날짜변경.suo new file mode 100644 index 0000000000000000000000000000000000000000..c5de25258431af18a6aebee0c116bf65d83fa3c5 GIT binary patch literal 19456 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 literal 0 HcmV?d00001 diff --git a/인증날짜변경.v12.suo b/인증날짜변경.v12.suo new file mode 100644 index 0000000000000000000000000000000000000000..d86290496edeab46024f561d324193c19431cabb GIT binary patch literal 114176 zcmeIb3y>t&SteRzgRwCnz>oC;hPGtb5q9>?cV-E{@+tLdTGKn-8fonmb+fCodP-f@ z)vl`UnKm;K!Yh1%^@E3B7|AP)j4&7ww(J#PuQ4oO1Gem4gm(=n;Kl;6ObZhP_r?-8 z7T@nbCr?&ZbyZhob@!+xx@NL7D=YIn{_~&z{QrOc#}^*^mOuZQU;VbfC=GpHQ+jsk zpT7FM(sOe6pOw2VeRHWq-%sKAr>}nXtMn6HzXS)qo_wAr5I9$A<6o~dR|-lSICn}r zG?Y_+UR?UxY`nj1!drj$f}i-e!LuJf^)KnU@8S(b3H%) zbf3nb&T}}6@xKArgagClFUq0wEAcy>2^YlpE4U^c&~WHD3>@MeJ9qtkxPBFmSL1jM zj@RON9S#SFi^Id=;|OqsIBv#q3yuXGXK~z$;|vZe`?mDFg!2lHb2ygMd$;3!9>*Ox z?!@tLal9VK8*oH8?!xi?I7A!8xr%$Wq5Buo?=76yaWvEK8|iry=QpO;+c@`dY^C2X zre~t&Z%VJJuHlcMY)Pq#_xtos(Bn?2#VAe#w3+H1{>Y#|gcCG=RQB-iqrOu+#QpPt z{9Hy~c`L+k)0{#7Po2VpFUB!#{Y0Y(x9M{h5bFW54fKwVHH@U7v9uP^y0G8pduCXF z?nZ(CJ}qB z(R^AP=-ubzO!S{{P|QPmj@E;d^*;~Y<9AKtM8~r+RwwKKGjIJD^K~5N3Hp1o{{Qn_ z|7pD?j-vyfBL*K7f(L2hdpBE|Ic9i_|Kq$#55I~J)<3oe2>cTF_d63#ir;;dTLll+ zLY<_4xPx(FHQc?37PJ{p)WbdEKKr$bw@C(k)+v%1iq!vIc>bZc^D_3U|8~?!kntG@ z9QP~DUCpC@s+;6hI_G{GdztV5GJ4izJSguYhjSf0Uc=qazPvY8@Jhg+)?Zqur>&p* z|E6c*4?ffJKP$kCMR4jdc-6sCFwy_hD2HUXY3py`*|*}LkAo678UJ0)^_93m;)d5s z7l0FkHS+hw-_t4li9eaP{yLr&{C^(b7SRHl1#4{7=YfAD5p3XF4gIIFAS@kh4fTI6 zt$W(~36qGoq7U)-s~G9Ev{o1OB&cZ}P-(OJssH&_^7q7FeTMl*Iu+6X;re+^B!#qD zOZfOKvia9Y?~1zVjQ%sYQ{U;6|83m$jridu>5sPqzD<-K1I7gB!S$#+Q6C8T>lBF+ zBq2>(e}4YCsJRMguc5bXjKc=na3*cfe)B$UK6F*Z`~NTSGU+YoGkX4$9+v3BSzy6_ z)UQ+m{V5E8;?c*AKdlEOdrqpCH6DMc|HLiefbRd*G6e?OG}(oKk4xH`=I_)q|bRJj%oYf!Ly?N z{mP#9HwO6h&$RCx=5q(Be-iws82`ffcgW+<_8ev%|4IF~CJfXp_)q$$e?OtzB0nE& z{8zF2w#e4MVIKc{Y0~VYy_;v9qP6@5IH(=dw43&T&ZiH0Smk1HI9=Rnfc9Mkmr1<- zUP)tg$u$4J7C#Y9pSJ!y{T2KMt$W0Wa;~S7(*lpKSKOuXC!HCs>C@Iv@RCVsjn5?h zhd(v`FW}GWrMl@e{>lC?`Tp;R|9bzGu~&2H`tx0QV%qxu4W9kcw8Z`D*T&Y`|AFeK zy+zVrOk@UR`{NI42L!2kwp&f}ypQFS-A8n(xdcP0Ne}elw9-0>Z#QMFDm{xpT^tKKD zpLV%AIQMsd`0tbce#Z>(r>TEBEqH}dzjeqQeD7x&5--u99@C2KFZ)svqW{!)`lQ89 zJPH1LxPGDY5celx0M$=>0sj)mwDl85FX}%J99v;y&}7{9C5!-J-ZtPdiT9^Y()vSt zIjr+j_P>JX)8XGEf8T-eAlP3(D<<`w>Zkcn@@$d%iKn8y5&8`C|D)x9{_Lo~(0^og zPYZwIX=-U<&w%+~xc?{fzd!#3|HHMsgpFM9Mp~~)w3kqb@SpIG@OfJN`#{+saZ^GRWd&wlH#(9!TGNB^b%lf4Y#)U@^g zYdrhDw7C81SJP+qI|=wx-SpY-S@GKwo-_uKs^{|Ic^7?bFxK|JL8r%e>0|UtoiTV;SSQ4U3$Jt!gb+e7>4F z#$$Bw$gB@a-0$Ljn_=i#U@>Mg$X@3RHol5~aLN z$r4@Yk7!3@4r@F~7_^?uv5pPfo9r#VFO@{lP?Lqog%k|XT>it=>jbySA+DAzG;tYC z=hho7JX=G}&C)3ViH@7yGYdE4?6J1y^*U(&IQS1%yma>4zx4NyJ^sVr^bJ4pPrv@! z@Bbl`wio{W`tx;k(H`RJ$d-q$^KGji5dLG@FRD{guzmAifBeC3X*yu@e??R@V*nryKuZ4$9r(R7spTGAYSLEaomUF zejM+|@gHzJfa7Oyd;rJK;&>3p2XXuyj)!oNj^aZ&egVfX;`lI*U&8UrIDQ4k!#I8w z$478{6vrbtK8EAtIQ}D!M{)cbj$g;|8#q3Je_)Q$2#_?M?ejCSs#zAYt z@8bM>I6i~pvp9Yq#~&*4pH z1dDqssOjEzke+BSM}3}g+rvy3x8|>dCQs_E1KyCvxzG2W2aP7)cl7=KbArL+63|hO z^@StC*WpEr@2VeFZF{kWMB?o+c)Z`-I1EfBecW57z|=uOkg$~I zYy#3%T=pc3zbKQ8`j|}QuLNOJ@P_0yLUX)S`ab4k@&lk0GUkehS;wEnTJ)FS@re8O z#kainZNW!AAZ`+}41a#>JI_3Lf9;pw^POKQpDA@d`wjS=9%rx6!Xmy*Nq?bt`1;ag z)*nt?KdPwbNc%V9JJH}->wgo3ak3T>f;o9oaQZ~nJbM)jR8PKs2&7!*-@CLFEt{VeZgnBWY=H#TmLjP{-d6xT?rkU6dQ9<2d$wi z6Sx-Q?BkAs-&N3N75wVApyWkpD4Li74b(xtE3|vCH6{L9z~T@!C^!cwSwi`0f%-|C zaB-+!uD{FAn(J8qN41UX9qHNUGQYq4+&XC6z7H@el@7DS`90%5SwhIe;kAd}o?_BU zzAeP}IS`NtZ?=KU9;BN!+@q18@fybT!Jd8}C}#=yPxE;c`5}Gi@MqLLMt6oDv{5$s zg+)x(YJ#5B(as1nj_kq2U0y%EI;z}*+@o2v#i&=iG>17ST2o~+tKSalzxdGlwSj|k zvV7$rn?kY~C4Hx`swUMcX(GwKuZyFOx`-o1SJ2UJg149}7!&r&@}QG8jlZBLVA*^#}nqR6sdzVcMHGufym)dKDO#it28 zFNYX_hn}LwwssmD4YdGNyD5^&=?AzW%R_&}Z&xnAYPsFq>NVOMuNi@_KsZ@%7zz6hN`N%uDhmd>Q^p5b-;X zE{KL3;E(MarfF)Hqg=VHC%RVG<5j6#mo-UO)H2|`T9;Psdfm3)VYkP&sOB*IE^&EGvpqAykj(RVu05 zi+gymdZDqAL>2xtO2+6orf2E8V@qBFb4c^~Y-L8vz4ZZ~SRYe^I1vYB*xjig(o2fuzzdjO_?l$dtS_J4=>pZI2T zDvyFI6}t#gwremCDMiMPE8lg!_8OqW-T!sH<)vZ%S;l4--%TOygz!6>1c|}@=V|wU zK}J+{6b5thk!*F6BFOv6*^u{4ySKdAZ1hmo9y(~;IJa)h)i%3x7vp-;nQOLtb07GvEGB z(%otjM5dj%(SEA0=MpWsxDmYixI`L|yU9T7E)@P1!x6r2|UHP4-t}8>+ zV~|&9w%eOU`tj&f)el9J2Z>d^6*meE!7tC&bT8hF7ncE}A^KFs{Z=>PCn7|OVpbF@ zH<4?NxY=Hd>fI#nR4){t)xR-YgGaNK`*D=E0_l4Yx~-jRd!yHBH>0g?(n+rsjw#a- z)c+z{@2P=os+JFetAh1+O&k2MVN1|7xL#nozUP=%E-!DbE~VUT82lT?-KOWgpkM2> zw>B@vog_+<9w1NT#dH$H9oLgLa&8&?^@X^bMD@+|ssQFQVcGq8(J3P| z-Le(hk`*|RdR)Vo$`1a7=$T^3hNsEemCIh-N;)wxsK-~+Aru-tCRO$l@QPjneo+zW zw*u{T?-NZeCY0Q!dV2xBp;jXtw9b|ly#jepscbf@efcBlLGiOzquY86s-A4XfVg=#GIKZ}|FOz{7N z$jt1oNNYIhb7KG7_Y-&~#Q*tM7;s@vH)-tYcMHd(WZ;O;VZ{IWUX(+26x0SPbJ8b| zf1~4n6pQ~O`aW&_--QN>_&+E1f5HIepQrub$aQt%`VSd*pY?wx#r;pu#sW-i>M*M^ z+oJ#OqiWp{Ad9xnoy_6SHo`K*k;CNhjtqbh^z-d348Wf`nvu0g9}RuO>CHyFf_z<)4!7EkvVl!S%nnif{tdV1R&5@WmNz-7dV25ShsC1!PXeJp5iw-nr-ajHB zS*($_k5c_@LGOoy1R_gi>X0FxU1F#Yxc0`aB0HRX zM$WkEPNa1TRx=A*9JQ^unYB}>;GufG5O)gc|2`{#ZMmKj$bk>bCeM|0-;pKP*A&Uk z>;F#d|G6F%7D)J<*#DE)&?Nt_qDJ}z+at37ufv>{T-=2t$BF$vvogLL5FhWqa!?!l z6Z`*39>RI(pVF|_#JHL{M`qYFt!4X( zarIR0ODD$F2lSyhF|IzC&)#T5Uhb}UVq87h0g>z0Gn=&&QN4}PaoszksIEH zEmj6M-A;^aNBB?|Fa*Aq#WzW;}J?|*C5 zO>2ld+<0^Pm|AY;rmGpDp}}iak`=`LLWCXlP6oIE3)ma^N)KMf#6i1}2QwCgggEFEK`JQgWO;=H+GCCwFwyTxP zDq`tqMy^w`iLSw0Y=%xv8ltRIsH2WLiUdC6o%-*>q{{|OJkvI%z|_hx=`u_S*oKh` zHD9$H#AEOgrfuOizjB_(4eDR!tbqq{uiM+IHQIA%<=k3Kp@ueUX&fOSV>Ri**wwib_iRhcDn-~GtkwViBB;7Fs$(0>V za%5KyJww)l5O&UYpn2_!U1t-~K&ml?`O>20z+WmbZg8w^CaYUJ-K5zh8)#E8qKmxP zIA3f!Zk<+Tb!)AIV0N&>n|^xnk^9oqpm*`=EIs?E=-F5^!$YEkdxlH4GpdJxFYrB| zeo$O#d4&f&Tvd{C*|HTWUd10psmao+X;aw2IL4tRiE3VP9}%5YLe(ZjM3h1UM))>@ z#<^wBl2pxfjk4@%j)#eN*7X+_mf{ZLCPcaGu~UzeeVTdIxU*S}+N-rjW0Sw1zeX&H z`QD`-g2I4!*(&}?rYfrxEm1*GF9c7dChzSWqO# zS7ga4qZ^*;IHrbXFEX$5jye4tiaU*st<4%jkIixW_RidP(wR4<+GU6~w_F)(5=B5w=OZJefWdzUY*s)DE@@FJPG z7_mC)sG~UDeo7XjsX7I?&AJ%%J9UjlN~3rV_#EX(9l|QK2rrs|g*lyoi!|R6+OHbX zA08OB(r7St4>+l6hCFgP!fZnXlU`KouD09j^Ow3c&;!|WK#^2e@>LKg-S>P<@UjQG zWVxYXDvl;QSKR*~=s__Ln2DzA6mf;7P!sdL9}?t3qf3r2g(y~LGgYjGXIGZa$IV79 zM`2TmtlitJsI_hSF-p(OX-5Q!5sY?Gmm>GWv%zwrH<4^qh^Zco03i6P#zv)!$Y&KE zPpE)1k^A6m&7Cy#CifB<9(vK<8u+V1F<~+@0mBGF*+$e#GblqAG0d`LYnCEej^ma6 zpsbiq>h0z&E~k!e5r8|^=Z%8bwAvdKewYQaNv{bROp-_NiO2`8+Ug3Y3j%c!82{e_ z#t3+7sEY4PfvTYKn&U#|kZmcn~Ys+`?8Td$vi zTMF2Q{eIkwTCV8hN;&sC|FT;r(<$on~}@nS}QSyy$3!9gX)J z$wkDDPNVrvCr|vX7!1oY^g!0(^unUk>ZXUdvw;dqY5L&g4AWJ?`vlwZnIv9cNxD6P ze*T*P_i7f~I+fOQ5>qX{2$87*A*qQ{dc2fmJBEZ2uUBdpDs(HtjlrLD-+0W$h@U`} zD0*n2=%-n@qC@L2^jf=b{_yVmKD7J(AB$>9cfHr%q&~1t?c14D8&PEPyek_o(=^I< zXh?>FDFa?rmmC)~z*h_qM$1#(GG_i_uv}SDqMHXoEit)uZS7*ElWbE+MMQ=~P%{bv z)k?aRo)UGExYkMvtw`CHwB`7gRYtpHH9#C)J4C!_2*jA&QF_j`vevF{QCzGp%^OmnrBhNRg<=|VfM(*XY3sIS+qR_2h;#~ZR+DTi zS%q9!mG!z+wv^bo;x=Xtq)y69uiZ(AT0;+~x*>vut8i3D7;3}8P`j$6 z$-b^btD~uEaOJWKmX;Xkg@vepDfsBdFahq%%|m?j=~lP<#^#O4InYZarrN>QFNF#q zmYJSyG_cU)jCJ2e@#xP~`3Kxz5Zx(<<^q7Pl)*wd4q$KUWyuW#Pck4K zKwaRuvgYL*tFp$bd+5Q4#wup6v3QS3{ZOcp;lfs-*w-2BuZE@uJ&P}Sq^#9#%>igt zL{#^+z;JaXa2#MtAGESc)C)S|A?h`vwGejuT3Wq{h!o=Dw&v=MX40KIeaSX& zj41GOcL#yQ5d#>?%~sTnNmYp(-D)>#qAa?}f*co8vHoY#?lABJUj@b0kmmr3egn?H zu4hQ56)GVGg!dGXUBA=VP8K%m?I^nvGcg%I6B}4#u`E#3dWvC)m~p18sd`kS(i&8n z5Mb%a^tzA~`q0<#k44UZ!)-(ib6qOdJvJlK(aCjYZ^x#SAhO+- zA{~30^etl;s&%zit3u6cSK}Hn4A>sSej6ADL&LJnK3Cj75M%5BKg%{Y20b%C=$SGl zlK^+cYFebv$4@5u6g&Ndv+iE@gj?O7E?uakefqBijDwVX3(0IG4UW| zNKh|W4$=@Qp^m-5Ww!G`TnSg}Mazv#UfdZw-KsaRO|-bXN%SG=HZDP{j}y^w;yJjg zFG{rx&7=dGPF!FAMiJVPsbLRH4ad+8Qd5qhhIt}bCPGijbXA4oG9$J9t0JAsQVIBm zXDF^8NZ1Qx`KYiZZDJqS$F7SP$~tXja1wt9f{kUn;H{_N(kKtfJfNkCC}>jwHZkLReMQrhvTsNZ@msns2T~c@SrBwEi@IXzo{jmk zbjDkZ=uag$duEDuj~xz>^;RWmv+YdKbOaPZZ|ElH7NY7}3mT%WP6Mii0^Rv*G5xL3 zvH_*C1Tz5((;q2rTnK4W;Ax5iSK*Z`1%uvmQQ*IcerZs5 z`f3Q4!j>_iG~bmRY-xgkmmP!<^F!AJ&vbridH%LwB}&iWamoil%RZ~bsDuIuC%qNz z-uob|SyD!Pquwa8i_5!~ZLJ^Uu3;}XZWWkuyl4MY4BGLUb{dnU2d7=Cy(Ii>ch*wY zzsSVeFTX~`+9eK6+25s`glyobDuuac-9(1lq=HLY%k<^;qE?trSU{xi*)kO zjv3MptrodSIolxqkK^4xmS_#?U0M_==UQ>H!|Cj=iEjEKf@vaGo@DC|G*5mRi=z$Y zx#Q`22wM~xybl&f_x4_+8SzumWpOk^6K$^|Rb^A?bPBL$nd;!s<{6a#Q?Ot|sD{ZC z6(@+toZI61glh4$J(+ZETN;#WHCcj~oj{dYtxBspa$d$YSu5+vc&SyjEAD?4_;+Yy zIISo*1{(+0_FA&tKvv2sFLJJLD zfv@UPC_~k6IkcySZAm7?EkXRG{VM+DTp(yfHnW&S#{MuR99>m5I|=(jGpX6GRxWhc zTCi#?($+5uJbFqYu0jKVT>;iT62BOIrmnHA!s$WJX>(>~qX!05OfUm6kt_-ZAv)Zf z$|3fTEJJoJA4z6Cs7B8?i%VXw(~QIgFjj17?ml$ylkff!=!&AN@BjHH-+Axu1NZH| z`;n*#!oq@4X&y6-j8Zfy6b z9^L(SKX~<_2Y289L)Zx4tmJQ8ee)x`@A;+qPOVwRUKlK}AtYiS)__Pa>9FmR91Gh= zvI6^Zn6PM88Ah=`BGApjmY$_!^UJk#jf_$8c%VS0WU0I5Fbq8?X7{?-pGMUKwscFGN3mXPY+}J#W`*gb6FNn5a>qxV0v>UN9ma?D9{tLsp%bou01jXT)2+PqL?J;;U#nq?W-q)TdmbZI(v`LJz+iLJ}3?m``_ zA`ASL%hmIUyG=R>aZz+w`u)-G8tjJn7WFzv>`rPTPNV2s5l@q2Jw#%xiVV>c0_A2^ zrO;mb;qI&nJ<*f*Jpx7llW+N0U!i>UqmN$w@S}x{c{06hD65`tnLdodC@FRs$;e&V zhtCP77&aBL4XT6FcUBh913N&Xva8uUsNZ$<9Y1yTpi>gdzdyyU{w|OT7-Y7 zVHW13zo9!-chbK2adJny&A%LSchbJpx`j4$`@2hO7^(*C;9A&4*Bwv>+kq<@)Yv4N zDO%aX&i@L{QzCUR63Jc9PVa{410xH>1dx?Tx3|+Qq!jqFm_)V)ei63u=m=%KRIr(A zQ|bn!302k5huwvVWl^o2fjM_4)s|yl6s}A~yOLw$v5%T`QZ+f3|F>1hYI|=}Qqm&U zWt<($cAJjh1WKhfVR~3#rOk9zvomdEtmL&@(DNo@O2Jx*NFls9GwZbeCI{o&$QTLM zC-lm!c3sj zCAO2U&L!3DB1=r>l5_}`bfXP?Qd3WosF>R#qpY+Vw!01T6D-hL4!Nw!WeqN)GIqOF za!Q1Sk1N@s4(lHm8CX2*eh0>Y1*mK=!z4pYXJJ-3qTNc~t`hIjY5+_YeQ3g!qCmUd zETPiTKpCw~q0A>;t5ztnYG$YE1v-+}U=>!J5ORi&D;Rl&lHoX(4#O8iQw9M_&bjbd zng*as-qH&`P5>wg8-+~LG6T90(v9l)8iY?(k#rR{M`hSql25S`I`}oz1`KLti#60L z+)yhU`C3v3=_oSjKPzVV5e+&v!?_hTIa_W)RErX1cH|EUC3D~mKj=yI%n@1#D{79gDXGD2G3#LWR|H1LWkZKol`N??yq{s60{eU2a3w|6 z6xp{`0}AXs0>eX|JR7E3(FWQnRy3%qE>!N0ll6A7T;Z7-RtcbWMe=wwF{ETRzA3qy zYDu!~!!yJ&;ovZ^WMHYH7R%F2xq%kTY|4R$sBM9RD}t-PltI_A6%hJKdgz#*$;fEo^&{Fkb2HR(2umlmEn#SQ`0J3XkXc>PozQ|aoN4Mq1p(yQwR!nK zQX|xOIlu4LPHNbniz9{Yt&tnBd=-QxIo!>XLiX30Yq#dA0j$a4737j{v}f1|Kjb6) zkl~a)2YYIo1`aKAL56iS2z5UwPG_{gQ_eGpdnpWb1|o)t#)k4Z0q+*kKlbfg4rfGW z=mmnUjT{ov0zl0sT+#~dT4Yu`$G2C|dBRDiP_HsnJ5V^U8HXs<-ABE+0w)D*^Yq9c zx`3+tSfHA^KdN>4^e+;(=QyC+gkJH9R0!36LlA1cY#~+=RDTeTu^K|N3Lmu40%{XE~(AkjIezXnb^#oOX^K*Ho(!Z9C?V`nM885w9{;Fc=Yr9CboCd za9aFsM0PpsvdEacM|4F|4bup)ed5V1JQAtRZMQ5bx(dI4Q?V3lfcur1UQ8YtNd+F3 zdS0l2Dy+JNxMPK41!a8s!S*Bwz7!oJhy7U?71qw7eTQrhVit|~j|yn2PUyj0&y`${ zVmpS2_=0dbrX*{=g;)t?Pb04i1;bjz%&MI+-bKuh+xDc4HUNZ&4T2p2qECZ zQyqS^20UuvMJr)rM@OUyM4z2SAl^s89%buz;3L3}VwI)P zlVNRX!x!0hT@AriLOBGDKu~88+qlDwZ@EzzOzd*s_M4LvhX*FGWYnA5g)z>gP{@)@ zmmUOes2SKJ_B9IQ?SK=p71~RIshFjC9<&p%>y0~S7tfu&4IN&~ICE*3ZWd#X z!iUXqxC!(K4)kV*&YwmIx1dI$EE;x zo3Vw*WNf+{F$+z`2c>{A{HhokPxBljfb}$1c`Uey`XuaC_WCXMWwRmVuMxH zJjAuLT`vTCv5YXDamPW_*Nq;uo|W5|UEMO3XemvqfZtYV+W8A-#hinnl5)6ls}td% zaA7DA@xh?Yqqv}$KUslW-Bnf~$vEJfqfQqaUPUI>yT$Mo3v-K5rxO}%kr5$6KBNuH zMfaQvxn_+JJSm$H0x=CXEM2MLM?k?F3ZTFH0Rg%Y+tn&4tOV@UHqjUce4C7!jh8;e%17R!q_N;|siy zfp10dAhXCU2483K_6beJWXj{K2y}U|-B~Ya)5@i{%p$W`LnlQaHikh5sBSII3$(^37boyDL!V{mZ3C?TG3V-4|_ilAvGrs)XGWd#;&ze42d!2T&X zQ|Od1)ojbReArg$umVf@fHyTZoJ&2%cv5I5C;i@6QKl>ZX?5D9+_2FX6A)|x%8OAx zai*|~E*3KUA_+-?M^VWq|4nLcSuIzd6y$unB zkw@r)@kjupcpGkswhv=M)j>$8-TNQi{ki+EzWIUOhwi)j(R=>pBcBv(KRB;c2X!G% z)-FO<5{U?K%|;78!z`7;X?T7;`K}M$$h7u_6L7qcc0}o|xi?&W=R4tdh34Gl`8P!? zaL`=eiEfFLn_11TudvW{l`~W`kM@?;JgN+9#xhEKK7M9}cZ~ts+JW_U5wFMRE$%Gb zwm@$%$+7l*<2lG3SXl}h(yxBvW8@5S}E;dlz+8E^H9q`Uz<9sWjfcpmh{3~=cM zhv)F!7Z5x%7U3G>CvDRenefjQ^K{m^IqQ4FP~)&vv)h0EDIeDimfcz7Z|^0e(B(`Q ziThjkzI#i-`MbA-l!zZ%K^d^Ji*LXcrg-ktc-?KKq|__Tl_VU?rKQq#Nh?LAGo?nU zg`-yrN;P(FmpXVNEb;R~X#;no^n0tMl;-i~DoXz2>q_nC;QZC}ldEjs%R0)s2_>$e z+>KJVv|if5xAP?zCEtcttl*o2HqftLsacBgOc%ea``qt8*Kgkon-Bd?JgR-qdDX^N zv-uj{$S}y(GkB3wFns7Zpg==(-Bb>W#Pa5`XuE!lHW37Sr7Z@rHon=c2Oj>$xZeas z>!m8bbJk!^;Fs80t34?f+ z`(XmW?Of3Vqgvq@JAFy>6H1zdU+$jw4?ak@?kQ8iY3!7mzQazx@V88{ehyMiT03cN zJz4*WxJp1_G=hwdQ*#GK%9s1wr*Jh(fjWIMkzobmH2<*E+Njd0_q7^AH$2I0`?)7|Q z_E5~+5`r~$`Uz>~D&XxKOF`mBlh%vTSTu=}v4H)|Rb}-1#rfBy9yhmoSbkyTJic9d zYPK%`#}YRxTN&MGbNV%MU*Ns=ZNW!Aa4O^MvZ=W*P>2Qy9_(-5{+XX7Ud^8lC~V3< zX8qyAfB7AcxNl#43#!j23XNMdIdf2ET0ci!_@ zcZ9STrV>yBuAgMi_0lUL?IpOP9<(6`yc!ZGtzdE<45e?!w_;`JtPGMdi_+h|d`YtD z7UZ!DD2vO%|M1dC@GLX72goE`}?`+urYg{b&T20D$%Z_G;R(C%*E;6aRSm zhU*`Gk$=yZUix62`XRa~&X9Yr;Bk6w6;N4&bm^d&ozfhJdZ~0feyc;SC+V{ah`EsA zY7F;hg8?5unmcp^fFm`k=;sFi@y}iN(3k(}^JV|JH2;U?%Te-OeoZ~3#OyqewkGSy zS&S{TtM9mX_ul&u)c@*7AK87^y}J+n;O_f>c=!IdX35%N$P=$(KfQq6P8N1bGeQG9 zX~@s6ATF4$VEf;@E02DWXK^{k8zNeV1o$`tBR*5H4e zbqYz$LK#*bGjwWjh+J=ZX?P8IS1~MMa^t|+Y_kZ?*hyV1mzxjzzewb69 zO{O2ZyY&5k`HOFS^|K#8MGCEJUH3d@eV5VdpZ=j2zT#DA1)$@7Gg@*EcS&PI>rk?X zE<7Jk4E87~UBYwjk@cYs3UxQuzQJ}yL#?<3O7vi5plQ+Ta4ZD2+IQ7Ov?1C20K|loFz*b9j@U=j#k#Wv)jn26-yM zUx~GXJ&^mejBAf^0k^04OIlZG|d9`McBe_oU}Hevp^fNzdK%{580J3G=~Zt?==ULv3)hM(L{sXGS{*T*KYx?;>zc zd@Y}ctSaMB!16{+M_dP-w}59o;N3+AZw=6E;V$h%)B&|FeiNUY-7^csO$vMw+JCzL ztwZ;TOCgSO4J8qG$*HI)VVM1)`{z(X5iB`_5u@4BL|;}=M+-OsxM!vf$^M-Td? zzHIEfL`7+5Vhb&*rfnGy-?_2nEaP437oS&M)IGiw(Z>bAbAin$;=ienH;gTR-0T`% ziyxd>pz>Bx9v}Dddo**U)9K8hT?c{(;bsR1?RX@B_aJ;5xHo!dXY>pik2U?-6M>rS zpj5(!7GQTL{x)&0;ct^s_cfep%^{p5T1X%2VH4-4V-E-E&U`lS33Dd*x_T(R-piub z8RJ}sfe->mfX6Jd@y?mrENLd9^~#=!@bQ7E!Q{<1OsOmf;M5U9UbT>KQTAaMv~ZhW zfzAP*rFpEs4G+4KN;ziJtVV6dcP}|??A2Xi(NQgHj%}b zLXT=uKC;9V!U)S5nTy6?A^_XS$gq6eD7enn8e;oH+gm`q;v<*kQ9B%m<|FA{ygEzI zJ}SoTKrszw>5yz^Qg4;H0Tz&Xvm`RBN&+t@#OI4w@dqhdWogxf*`qASF%B(BRAgg# zM064^v^F6kqRt^q9+CtgQAycDj1bL)Gqmh!4&`V(>-q}|OL2$tFXXPrPCYItgFeh5 zndxRVYOmHB4MZ-c_w(1}qtm<8n>rk5=HR6|T42ISR8q?1#)`b22&0L}giaaV@Knb! zH8gvXCzUp*mwn-Zwy{M<(#c$lzdVOvW%H&~Tjf#nHen1=#9qto%k2p6Eh8mLuJHN zojSl`)bG?a8YxXSxx2$yC0M$`9$=&nVHHBK`81dD1YD%~&O(*bA8v_TX*6h+MSM`G z`;h5()N+)%P#~-Zg*Y$dNRhc`AFe4nQm6AN)a)WLQD*&o0Zz|tcs&=PSec=2u@;_P zSvns#8E9sh^$6F@-fbZ>n9`nJWwMSFELzoFyz74k)DQ zZ8e(f87PHoM`NQx{t}2@4wNaBAm%}_f)#7-j9v($y|n}^69#44V1#a#anCSaD*#)KS=_Z!JYW+Ybtlm1p9yk#MsnXJpmMneHOb<;!Asz8-| z)%3y18K$d(_c;nDUU=^!D}B6Psa;_12b*xw4`}H{X0mZZ>2AVGs%k=!75uiou=r5gew{Q;?Z0uCJSdR zw&xlzfWLSobNd8v3ImUY3F6c#!PL?Va*00v$;a;K&reS(f$k755iJcaAU# zftn9LK3ft3jun|3VcB;SBR~jT+i?JUQ%6F!5a|dE&4Nx1!ysz|F~L+81W+aYonWUK zJ(v_LAMe$H!?4(ElJoplp~(Ij>wko?$f0@dldqX$k$+4efo?h`@**Hfk*q>Tp}8Sa zVIsMj;TlL_WH^4=0-c5D@tMX(;>9g-7I3YyELKSN*qWoXQ{B1Kmu&OKD2>qZ%slE+S(f&mh^=Ux+(BxFd2v%rH??*LB1x zSQc*VbS-){W^h_Nb2OPLq)KxQaypB|lsdTMbzm2FcBgCJ_~`_KKNhoLy2f)qd~8b$ zI8kxS{x`sBL%(b0?y(t>=2p#hW^c!)bKK8%TZ(jSY=EZY)whgcK<@NftqL`(U5#tR zFu*(t_EuQ-449QdAj9X1`v+o-9pGmfS(zly3=kWj42jAHcwjMx{Lx6#reo?snA&VN zlZdi#{_H2Ne&mOreD9;X4?jFD?GO&?+bWR`w&8?;01@_GsLYSwclCh}KKYJMKs5rx zWK#Gcb1BkJ7g@xAU-U+GY!f+g10?@dK|uU6CLV+g3F-v|S5!SDDur#>GTSI3R)jmP zN6U>%UQDqS*y6Znx>awOBh_Bq-K1SIgfPDZt$rHGoOlkd>Wfk>10t7#rW4oKzfpvC zWNO$0Q^P$S>9bd3sG)vWp9ms&jw!38xKyFI%t&qjsz|3kDMrXQJVSB)K*C-i_FGgJ zCW$8O_>e5e^Fmpttqe}$??9r*ZH0MG(dCLh1->N+k+HTDCDk^=HH1T~pa;D57kPOI z#04!)guwDeFf8MGpVDOU*x0bp8zn%H)&*!E7lU zms-pHlI=i)4W+n<#9tIayvL7OPltL(+;uCSK|uU(qF=KnpDs@^ou;J{3M8DAa74TJ zJ_u`OCN_Zn)f+_u(sL;%+gd-yUBg~(+$u2Rc+dW)7_{Rx?KCDy4^F#OdrA1&?yRMI z!9^zCUmVZA>LW-@+Sj|=tJqm8(#K;up8NEX#w%1m`S1z59e!}QSR8FqaJ7V<5C?=OWN&I5;nYzZd3a1A>r_Gs}jUE_KF~JPP^c-yCV^3eQ%Lq}e zS%&OdzKJl2P>r5(7MHwUrx}S0V651}*nQ~UC*S=e&=o~j-~aPZzVqJQ2kzT__ajjg z$vfDeD!oVF*aeWK)@Ze|EEv-%Lo*g{c01p`qDkP*K5A;xCqcg{luGHo*GRju-Jg1N z_uu{C)rTJ3eg6+(BYd-xzj5`=kL5bCsDZoB@fvk0QkV&b%)nk-My^EA!sU^e= zEBogJc(HBjmu&|G6IMl7L_G3fg$@SR$9|xjCSrjiFQMP)ZZgal7XtJ5!JdI`^l9i_ z+i>vZdwo@0k`{ALnp<6ma;3{B2SSTu*J`tn1zI*l&@9WqCS6hk1C-Qr6>QsJV(YT1 zyHLj>uY-K$a`imou~RA}aZz+w`u)-G8tjJn7WI$?uSRMjPNV2s5l>_HI1iB+t0GJG z69VOCRi)5gIwQBUAl=BFHK8YZ^1er)=trR1zC!uxM<2cV;YSM@^JIG2P*y#k(ucTU z^`XdAu_G?~@HxR0!=@s(L3MEY&dOq%v?aTmy@UE)SKskdS3iEw)wkZW`@V;1a|BjZ zaj%u8Z<&QT>2K&x)t$62ew^IVZu2jP+?}*9wQive-Tv;9ilh?;?ciG2MMoM61r`ek zMF2H6iDrsc_FyBjLi3bJ9gIYB*R#{RVfw(x0xt(`%(41^_Tnr-Zh!V0ixS8{ATi~BY`7w8}~Ok z7~e+5NLBvQ>7IEbx0FEmb8NYeu z%mgZ3Vms;TTvFXGfJOaG=!alQH^LkV20p2&XRCryAh$)fw$p0Z?l#Czus~}$8Jl7dsK?r+DS1mTo~eBcq_L1mT4q2O>VcvD15tJIP@Om&KY^=FTG&=oQ0S<9>f*_b!-*?B-m7_WI>75+lE0UnUI9GWmsi6CA+^VT6wT^po>XY7^6-H zWFRbQBdSOtO8v-R)4d{q&U6xH=wmyI%n@1#D{79g&1N0!{))f|BzDx{ zRV7QR4ew`YW?_GitRfO(3M#U1s|FO73 znyF!x09scE9s`ORV#@hG($r|GCCRoA&k)CigTug*fu)LCEEjIE%vy|PrnXh>6B&OEG;0^ zXe7s{1iV{B|Jb*0Ih+xhp%?HY895}R1%R?exTF=@wfL`xi)TmCE9gAoBvYtY8LAy9 zoY#znCc=L1%isfD$0lQ zs0=4*c;<#kTJp>yO=-Wb4euWEC+a5P_+{Qj={d zBb=QkEATzlLLWo>9+49ebjue;7y_=%jX~!d?eUAu{GD%?` zooQF&W^^v8&E1T!eG!@1%$-Z>O>8#6X|Wu6h}@Y(a7b`LM~vwGqt(xmL)}35ns_%EX5k&er2W?llSPwD3S^bqtRy` z@o2reg}7s_A}!1K@`LS35PUtpmoOj~XYCx?cgXf2X3>cMsDP&GgdWWGT*>t)wquBh zF9?@oO0wo#3Y^D1tqf=WW!N>skCC5p(=!dI5qH|H4#E$0`D0a>q!s~S79>YS2mv3S z>hPmAu%5w-R&wBzk4O`UK54_B-SJtJkGK~$8=ITtALzFGUvdp&8+)txtu7uM_(IkT zXnT?1VqBidV&Gk~rqbvZ0cN&~aD**{Wy=6KJINZN^c?l9w9ZWIO+yWF?^=H$fTfeCC2JH@G87~@O|g)GUm zQbFK`ngNq!U!ycG4mc58p}iECidmZHK|2Av-nesi@!Z+l&;fSNHGMiZgb_i8SArlG zZ*n#*;MM?BR#-QfA$b!abO)mDV2c>MuHiZwqLaDdmCG&!(8!N3_N~5Fho$tKzM)1B zMim6(roeL4QY`Ihm~Iwhj>3o9s>VZg0eKP;QI0%N;bA~w3m|t)XU+b3vBm^tXfU0! zE!m+>NQ5D9$Ou9=EW}>15wb)9Gsr`GjE#U1cg{eVqYxj|NCaJk(KX#k+4w!(M(dGb z8OjOH&?2)D9;WqPyq=Ct0q!Ca1qH# zg46_Nz%oqT4SZ}m5}Upqp8>wCaC{l~Cg#W<@K3@zxZE}BJC%XJe+>EbN~gWr?hOS9 zq<~OxB&}XR_#z;1A^t4GLs!!^19m1L02Chw)}m6`bFsmyY98X+*{&CYy`ZR|amPWl z*Nq;uo|W5|UEMO3XekYUgWpzY+W8A-MekurlybOns}td%aA7DA@xh?Yqqv}$KUslW z-Bnf~ad{L^r_;rTSCNVJZZUktqOl^>>4XMbWJHLN4{5`4(LJZyX>l{|s93|C#dF0P zmaf$BBcR|79CXvQ@B;#LA-1bkP*@4t0fYuI6dPv48c@SF3>(UHV161QHtu-6CI-;s zVPYq=)aH@m_?Uy;z>Ayl22!dOV2v^s?y$j#C@XqyduI81!QB9NW&gwS`H(m2Y9zxKt;s6w(G|YEv7*L48$5L`%ef zgQXy>Kb*kR5noL@p`hI+Y z7c%gz2p(h>nZ@AiEZ#n$shCW8d=-H%FSa}DupBI6-pJRz%p$W`LnlQaHf0b_Y;TN? zK1^|-XWEL&$N=zj>UdB*3M#3oiR8#Uz89}xUq)#OGVH$6Vr4A=CT3{wqGG~ zbzuJ#oGEllm}<7=TRv>7bXb9~Ielaqe$8!x0Q|7q2@ac;e=6L4{$XFD4+^0+bh{eBw-D7hNo5_{V1>Yzyc8#l6UI zT9t2{Yiu-=Uah^gN)Z@4>uC&##&)e$feDu)Lo}d$Ji#Gw-n#J0;b#=Xl|2u>w;_Ts z@(5ip9tm_9a>Fgr_F+t@ItU51d;g=mKX?DtH$SlZ(0x}wde7f{bY zRrLA_i&R(1W%tf1I_P_pLo5GzN$C_a^L>AI>+e3bjcdw2=VwIi8pD!yKnf=_c_HmC z(_3?Ixcbg_!iNn*dzV)bxTDG_IzXa~45HbEpIJ0sV}Q1HUMC^ z2p;^!3|#32N6>q++kgJ4_u~57a6E5YVYBf4svmR?2C=ZDHA9EaP7^xgfoEMdF*9hqFOUF(!yEqwvaB|M{rlk`0=OfEAtfnj4d7n0`I;;bE8(N~VAox+the?r zbKL8B?36S1tdkJ_z8J?Vf{gDy@3Mdzq6m)y$d9d`)%mKiFHfw$4@v3``@A+++ED!O zR8y06kGCy^SIbg|VyNr^4=Zpv9MiY+Dv5gtTC%*fts&|@dKWc zh-bMUCIH;d6+H@Lr!Q%KLP?YG%iZ(-!3XKqJ!J|w9m1$M{ledZtj9NDr5jv1&zD@} zK<1goqtf82d7fp&el`7YQZV^%eTw!wsEc?94{L15B*L& zqJ8J5rclclkT-W77TtOFAtN8J=?}?tMJ`jok)XDXm801BRZ6#Fw1-EPc%e~acb<*w z-tqdvWB;r7bp!C2jUF||(Cqw@G8Kr&EszX_q#Sfd(TWt9;~H}|_jZsFxQTJM{_+9WQZ@leo~K{TRkklupl4b zt~@o%m%9gmV~HD;t&DE8IsF>BFYsRbw%{WlIF)hs+0@(@D1=_bL(%7N-~O4OBwlGs zps*?bnDvJb|K)c);=XkXoSs`F30u zD??{x&>C5k{`S`wT7$N*j$X*t!GCz^!dIS+woJPYx{KjT@wWH-U!PTQ9kp2W1?K>O z_5t>4+Oa3T^28JWc=?9wAAXU4&zD~MV4VOjx+u<&`>)_}dTkX@S%Y@LK`}ePI;+skA+r~DVJlON_B*d}I3yL5Ny`~UJ6 z-}vfhKYog2v1?uTJVw3C=IT%X&GwBcz*?V&!VJ7_B^LEoXT8}Rt&DGL?7rQXa)b)|GSJ!kF5f? zr}*2=Nf$)pskc7sY0R*u&DJPt;~Ks%GC0uu>*A;b9;E;5ufTcjXoMbf>P^oqqc?os z5~=N_H4Vdco|WH5D__^=6==xt`9>Ub53G}Hfd_#Jc)3ctQU!I=7J3W6- zdVb>vd3l}m+)dA4gWH!dA57K?AKy6C21jcYJjBXOlH>6D9$`J_w0s`2ii|@6%M)Sr z6TmVCO=$u$^S}gxw+867aF^uJI-cm_H}SdIJ+naE#IUqO_h|<snjNHRUqKx$;828mxKzFu4x{)S0T%~tCCb?X-D+ZJ*><=BfE`(aIg_C%m2J1CW~p#|98iN8&p zYxvt_)O`(ST5|{|i5Aj_df3GI>Da?Tx-*~6Z^E3(y{5zl2qLG$p(C}DlKuWnp&aA!L2!K3 zWBL$Oo{9VcNqYH_=KTFIH!%ttPk(xo@As%4KC{-2N%V0P1fIFFP7!K63Np_OIhSwZry%7?g{@#n03Pco$!C7_27pgIiB!;C;T7R c01vNt#P6T*e<%E33-bOb+&JO?X5s(-f7&m_ZU6uP literal 0 HcmV?d00001