diff --git a/vm-qs/main.tf b/vm-qs/main.tf
index d31c89f..f2736cc 100644
--- a/vm-qs/main.tf
+++ b/vm-qs/main.tf
@@ -106,15 +106,15 @@ resource "azurerm_windows_virtual_machine" "vm" {
connection {
type = "winrm"
host = module.qmi-nic.private_ip_address
- user = local.admin_username
- password = local.admin_password
+ user = "qservice"
+ password = "Qlik1234"
port = 5985
https = false
timeout = "30m"
}
inline = [
- "powershell.exe -File C:/provision/resethostname.ps1",
+ "powershell.exe -File C:/provision/bootstrap-qs.ps1 -ModuleName vm-qs",
"powershell.exe -File C:/provision/gen-jwt.ps1"
]
}
diff --git a/vm-qs2/scripts/bootstrap-qs.ps1 b/vm-qs/scripts/bootstrap-qs.ps1
similarity index 100%
rename from vm-qs2/scripts/bootstrap-qs.ps1
rename to vm-qs/scripts/bootstrap-qs.ps1
diff --git a/vm-qs/scripts/qs-post-cfg.ps1 b/vm-qs/scripts/qs-post-cfg.ps1
index f6fc9bb..400782e 100644
--- a/vm-qs/scripts/qs-post-cfg.ps1
+++ b/vm-qs/scripts/qs-post-cfg.ps1
@@ -133,25 +133,22 @@ Function qlikSenseProfessionalAccess
write-log -Message "Waiting 1 minute for Qlik Sense installation to complete"
start-sleep -s 60
-
### wait for Qlik Sense Proxy service to respond with an HTTP 200 status before proceeding
connQSR
$statusCode = (Invoke-WebRequest https://$($env:COMPUTERNAME)/qps/user -UseBasicParsing).statusCode
-if ($statusCode -ne 200)
- {
- Write-Log -Message "Waiting 25 seconds before next pass" -Severity "Warn"
- restartServices
- Write-Log -Message "Waiting 45 seconds for Services to ensure they are ready" -Severity "Warn"
- start-sleep -s 45
- connQSR
- }
+if ($statusCode -ne 200) {
+ Write-Log -Message "Waiting 25 seconds before next pass" -Severity "Warn"
+ restartServices
+ Write-Log -Message "Waiting 45 seconds for Services to ensure they are ready" -Severity "Warn"
+ start-sleep -s 45
+ connQSR
+}
$statusCode = (Invoke-WebRequest https://$($env:COMPUTERNAME)/qps/user -UseBasicParsing).statusCode
-if ($statusCode -ne 200)
- {
- Write-Log -Message "Provisioning failed" -Severity "Error"
- Exit
- }
+if ($statusCode -ne 200) {
+ Write-Log -Message "Provisioning failed" -Severity "Error"
+ Exit
+}
Write-Log -Message "Qlik Sense Proxy responding on $env:COMPUTERNAME, status code: $statusCode"
Write-Log -Message "Connecting to Qlik Sense Repository Service on $env:COMPUTERNAME"
diff --git a/vm-qs/scripts/sharepoint-pnp/install.ps1 b/vm-qs/scripts/sharepoint-pnp/install.ps1
index 495b4b7..2b0cb05 100644
--- a/vm-qs/scripts/sharepoint-pnp/install.ps1
+++ b/vm-qs/scripts/sharepoint-pnp/install.ps1
@@ -4,6 +4,6 @@ Invoke-WebRequest -Uri $msiDownload -OutFile "C:\Temp\SharePointPnPPowerShellOnl
Start-Process "msiexec.exe" -Wait -ArgumentList '/I C:\Temp\SharePointPnPPowerShellOnline.msi /quiet'
-Copy-Item -Path C:\provision\sharepoint-pnp\Import_From_SharePoint.ps1 -Destination C:\Users\Public\Desktop\ -Force
-Copy-Item -Path C:\provision\sharepoint-pnp\README-Import_From_SharePoint.txt -Destination C:\Users\Public\Desktop\ -Force
+Copy-Item -Path $PSScriptRoot\Import_From_SharePoint.ps1 -Destination C:\Users\Public\Desktop\ -Force
+Copy-Item -Path $PSScriptRoot\README-Import_From_SharePoint.txt -Destination C:\Users\Public\Desktop\ -Force
diff --git a/vm-qs2/main.tf b/vm-qs2/main.tf
deleted file mode 100644
index f2736cc..0000000
--- a/vm-qs2/main.tf
+++ /dev/null
@@ -1,146 +0,0 @@
-resource "random_id" "randomMachineId" {
- keepers = {
- # Generate a new ID only when a new resource group is defined
- resource_group = var.resource_group_name
- }
-
- byte_length = 2
-}
-
-resource "random_password" "password" {
- length = 16
- special = true
- override_special = "_!@"
- upper = true
- lower = true
- min_lower = 2
- min_upper = 2
- min_special = 2
-}
-
-resource "random_password" "qlikpassword" {
- length = 16
- special = true
- override_special = "_!@"
- upper = true
- lower = true
- min_lower = 2
- min_upper = 2
- min_special = 2
-}
-
-locals {
- virtual_machine_name = "${var.prefix}-${random_id.randomMachineId.hex}"
- admin_username = var.admin_username
- admin_password = random_password.password.result
-}
-
-data "azurerm_key_vault_secret" "serial" {
- name = "qs-license-pa-serial"
- key_vault_id = var.key_vault_id
-}
-
-data "azurerm_key_vault_secret" "control" {
- name = "qs-license-pa-control"
- key_vault_id = var.key_vault_id
-}
-
-data "azurerm_key_vault_secret" "cert-password" {
- name = "star-qmi-qlikpoc-com-password"
- key_vault_id = var.key_vault_id
-}
-
-data "azurerm_key_vault_secret" "sensorsettings" {
- name = "carbonblack-sensorsettings"
- key_vault_id = var.key_vault_id
-}
-
-module "qmi-nic" {
- source = "git::https://gitlab.com/qmi/qmi-cloud-tf-modules.git//qmi-nic"
-
- prefix = local.virtual_machine_name
- location = var.location
- subnet_id = var.subnet_id
-
- resource_group_name = var.resource_group_name
- user_id = var.user_id
-}
-
-resource "azurerm_windows_virtual_machine" "vm" {
- name = local.virtual_machine_name
- resource_group_name = var.resource_group_name
- location = var.location
- size = var.vm_type
- admin_username = local.admin_username
- admin_password = local.admin_password
- network_interface_ids = [
- module.qmi-nic.id,
- ]
-
- os_disk {
- name = "${local.virtual_machine_name}-osdisk"
- caching = "ReadWrite"
- storage_account_type = var.managed_disk_type
- disk_size_gb = var.disk_size_gb
- }
-
- source_image_id = var.image_reference
-
-
-
- provisioner "file" {
- connection {
- type = "winrm"
- host = module.qmi-nic.private_ip_address
- user = local.admin_username
- password = local.admin_password
- port = 5985
- https = false
- timeout = "30m"
- }
- source = "${path.module}/scripts"
- destination = "C:/provision"
- }
-
- provisioner "remote-exec" {
- connection {
- type = "winrm"
- host = module.qmi-nic.private_ip_address
- user = "qservice"
- password = "Qlik1234"
- port = 5985
- https = false
- timeout = "30m"
- }
-
- inline = [
- "powershell.exe -File C:/provision/bootstrap-qs.ps1 -ModuleName vm-qs",
- "powershell.exe -File C:/provision/gen-jwt.ps1"
- ]
- }
-
- provisioner "remote-exec" {
- connection {
- type = "winrm"
- host = module.qmi-nic.private_ip_address
- user = local.admin_username
- password = local.admin_password
- port = 5985
- https = false
- timeout = "30m"
- }
-
- inline = [
- "powershell.exe -File C:/provision/qs-post-cfg.ps1 -Hostname ${var.resource_group_name}.qmi.qlik-poc.com -Serial ${data.azurerm_key_vault_secret.serial.value} -Control ${data.azurerm_key_vault_secret.control.value} -Certpassword ${data.azurerm_key_vault_secret.cert-password.value} -QlikUserPassword ${random_password.qlikpassword.result}",
- "powershell.exe -File C:/provision/carbonblack.ps1 -SensorSettings '${data.azurerm_key_vault_secret.sensorsettings.value}'",
- "powershell.exe -File C:/provision/webconnectors/q-WebConnectors.ps1",
- "powershell.exe -File C:/provision/sharepoint-pnp/install.ps1"
- ]
- }
-
- tags = {
- Deployment = "QMI PoC"
- "Cost Center" = "3100"
- QMI_user = var.user_id
- }
-}
\ No newline at end of file
diff --git a/vm-qs2/outputs.tf b/vm-qs2/outputs.tf
deleted file mode 100644
index b031e85..0000000
--- a/vm-qs2/outputs.tf
+++ /dev/null
@@ -1,31 +0,0 @@
-output "virtual_machine_id" {
- value = azurerm_windows_virtual_machine.vm.id
-}
-
-output "virtual_machine_name" {
- value = "${var.prefix}-${random_id.randomMachineId.hex}"
-}
-
-output "admin_username" {
- value = var.admin_username
-}
-
-output "admin_password" {
- value = random_password.password.result
-}
-
-output "qlik_password" {
- value = random_password.qlikpassword.result
-}
-
-output "nic_id" {
- value = module.qmi-nic.id
-}
-
-output "nic_private_ip_address" {
- value = module.qmi-nic.private_ip_address
-}
-
-output "nic_ip_configuration_name" {
- value = module.qmi-nic.ip_configuration_name
-}
\ No newline at end of file
diff --git a/vm-qs2/scripts/CarbonBlackClientSetup.exe b/vm-qs2/scripts/CarbonBlackClientSetup.exe
deleted file mode 100755
index 65c58a1..0000000
Binary files a/vm-qs2/scripts/CarbonBlackClientSetup.exe and /dev/null differ
diff --git a/vm-qs2/scripts/carbonblack.ps1 b/vm-qs2/scripts/carbonblack.ps1
deleted file mode 100644
index ada4141..0000000
--- a/vm-qs2/scripts/carbonblack.ps1
+++ /dev/null
@@ -1,16 +0,0 @@
-Param(
- [string] $SensorSettings
-)
-
-Write-Log -Message "Installing and configuring Carbon Black"
-
-New-Item C:\provision\sensorsettings.ini | Out-Null
-Set-Content C:\provision\sensorsettings.ini $SensorSettings | Out-Null
-(Get-Content C:\provision\sensorsettings.ini) -replace ' ',"`r`n" | Set-Content C:\provision\sensorsettings.ini -Force
-
-C:\provision\CarbonBlackClientSetup.exe /S
-
-Write-Log -Message "Carbon Black is configure!"
-
-
-
diff --git a/vm-qs2/scripts/gen-jwt.ps1 b/vm-qs2/scripts/gen-jwt.ps1
deleted file mode 100644
index 9e5be01..0000000
--- a/vm-qs2/scripts/gen-jwt.ps1
+++ /dev/null
@@ -1,10 +0,0 @@
-Write-Log -Message "Generating JWT for QDC"
-
-Expand-Archive -LiteralPath "$PSScriptRoot\jwt-generator.zip" -DestinationPath c:\provision\
-$ENV:PATH += ";C:\Program Files\Qlik\Sense\ServiceDispatcher\Node"
-Copy-Item "C:\ProgramData\Qlik\Sense\Repository\Exported Certificates\.Local Certificates\server*.pem" c:\provision\jwt-generator\.
-node c:\provision\jwt-generator\index.js
-
-Copy-Item c:\provision\jwt-generator\qdc.jwt "C:\ProgramData\Qlik\Sense\Repository\Exported Certificates\.Local Certificates\."
-
-
diff --git a/vm-qs2/scripts/jwt-generator.zip b/vm-qs2/scripts/jwt-generator.zip
deleted file mode 100644
index 09bf954..0000000
Binary files a/vm-qs2/scripts/jwt-generator.zip and /dev/null differ
diff --git a/vm-qs2/scripts/qdc/Categories.qvd b/vm-qs2/scripts/qdc/Categories.qvd
deleted file mode 100644
index c085701..0000000
Binary files a/vm-qs2/scripts/qdc/Categories.qvd and /dev/null differ
diff --git a/vm-qs2/scripts/qdc/Employees.qvd b/vm-qs2/scripts/qdc/Employees.qvd
deleted file mode 100644
index 56ea76d..0000000
Binary files a/vm-qs2/scripts/qdc/Employees.qvd and /dev/null differ
diff --git a/vm-qs2/scripts/qdc/Offices.qvd b/vm-qs2/scripts/qdc/Offices.qvd
deleted file mode 100644
index da4fb48..0000000
Binary files a/vm-qs2/scripts/qdc/Offices.qvd and /dev/null differ
diff --git a/vm-qs2/scripts/qdc/Products.qvd b/vm-qs2/scripts/qdc/Products.qvd
deleted file mode 100644
index be0e171..0000000
Binary files a/vm-qs2/scripts/qdc/Products.qvd and /dev/null differ
diff --git a/vm-qs2/scripts/qdc/Sales_Data.qvd b/vm-qs2/scripts/qdc/Sales_Data.qvd
deleted file mode 100644
index a690ed4..0000000
--- a/vm-qs2/scripts/qdc/Sales_Data.qvd
+++ /dev/null
@@ -1,1386 +0,0 @@
-
-
- 50621
- C:\Users\ACJ\Documents\Qlik\Sense\Apps\QVD Extractor.qvf
- 2019-10-08 06:52:32
-
-
- -1
-
- Sales Data
-
-
- Address
- 43
- 7
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 86
- 0
- 1675
-
-
- $text
-
-
-
- City
- 50
- 7
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 65
- 1675
- 643
-
-
- $geoname
- $relates_Sales Data.City_GeoInfo
- $text
-
-
-
- ContactName
- 57
- 7
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 86
- 2318
- 1320
-
-
- $text
-
-
-
- Cost of Sale
- 0
- 11
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 2009
- 3638
- 18075
-
-
-
-
- Country
- 175
- 5
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 19
- 21713
- 159
-
-
- $text
- $ascii
-
-
-
- CountryCode
- 180
- 5
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 19
- 21872
- 76
-
-
- $geoname
- $relates_Sales Data.CountryCode_GeoInfo
- $text
- $ascii
-
-
-
- Customer
- 80
- 7
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 86
- 21948
- 1371
-
-
- $text
-
-
-
- CustomerID
- 112
- 7
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 86
- 23319
- 430
-
-
- $numeric
- $integer
-
-
-
- Discount
- 11
- 10
- 0
-
- UNKNOWN
- 0
- 0
-
-
-
-
- 783
- 23749
- 12160
-
-
- $numeric
-
-
-
- Freight
- 64
- 10
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 737
- 35909
- 6627
-
-
-
-
- Gross Profit
- 21
- 11
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 2017
- 42536
- 18147
-
-
-
-
- Latitude
- 128
- 8
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 85
- 60683
- 761
-
-
- $numeric
-
-
-
- Longitude
- 140
- 7
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 85
- 61444
- 765
-
-
- $numeric
-
-
-
- Longitude_Latitude
- 147
- 7
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 86
- 62209
- 1966
-
-
- $text
- $ascii
-
-
-
- OrderDate
- 87
- 9
- -2
-
- DATE
- 0
- 0
- M/D/YYYY
-
-
-
- 510
- 64175
- 2550
-
-
- $numeric
- $integer
- $timestamp
- $date
-
-
-
- ProductID
- 154
- 7
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 78
- 66725
- 388
-
-
- $key
-
-
-
- EmployeeID
- 136
- 4
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 10
- 67113
- 48
-
-
- $key
-
-
-
- LastUpdate
- 119
- 9
- -2
-
- DATE
- 0
- 0
- M/D/YYYY
-
-
-
- 480
- 67161
- 2400
-
-
- $numeric
- $integer
- $timestamp
- $date
-
-
-
- OrderID
- 96
- 10
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 783
- 69561
- 3913
-
-
-
-
- Phone
- 161
- 7
- -2
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 85
- 73474
- 1223
-
-
- $text
- $ascii
-
-
-
- PostalCode
- 168
- 7
- 0
-
- UNKNOWN
- 0
- 0
-
-
-
-
- 81
- 74697
- 523
-
-
-
-
- Quantity
- 74
- 6
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 57
- 75220
- 283
-
-
-
-
- Sales
- 32
- 11
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 1988
- 75503
- 17886
-
-
-
-
- ShipperID
- 190
- 2
- 0
-
- REAL
- 14
- 1
- ##############
- .
-
-
- 4
- 93389
- 18
-
-
-
-
- Sales Data.City_GeoInfo
- 106
- 6
- 0
-
- UNKNOWN
- 0
- 0
-
-
-
-
- 58
- 93407
- 2463
-
-
- $geopoint
- $relates_City
- $text
- $ascii
-
-
-
- Sales Data.CountryCode_GeoInfo
- 185
- 5
- 0
-
- UNKNOWN
- 0
- 0
-
-
-
-
- 19
- 95870
- 366869
-
-
- $geopolygon
- $relates_CountryCode
- $text
- $ascii
-
-
-
-
- 24
- 2036
- 462739
- 48864
-
-
-
-
- 12 Orchestra Terrace 55 Grizzly Peak Rd. 89 Chiaroscuro Rd. 187 Suffolk Ln. 516 Main St. 722 DaVinci Blvd. 2732 Baker Blvd. 2743 Bering St. 2817 Milton Dr. P.O. Box 555 Suite 2 North 34th Street Suite 5 10-12 Brewery Road 37 King Street 1A Amhurst Road 11-12 Hanover Square 300 Queensbridge 1 Crowther Way 27-29 Endell Street Grenzacherweg 237 Hauptstr. 29 Åkergatan 24 Timmermansgatan 19C, 972 31 Gatauppochner. 1 C/ de Don Quijote, 67 C/ Moralzarzal, 86 Finca La Campana, 33 Gran Vía, 1 Rambla de Cataluña, 23 Estrada da saúde n. 58 Jardim das rosas n. 32 Erling Skakkes gate 78 Avda. Azteca 123 Avda. de la Constitución 2222 C/ Ritual de lo Habitual 2312 Calle Dr. Jorge Cash 321 El Barrio Chino 12 Strada Provinciale 124 Via Ludovico il Moro 22 Via Monte Bianco 34 8 Johnstown Road Adenauerallee 900 Berliner Platz 43 Forsterstr. 57 Heerstr. 22 Luisenstr. 48 Magazinweg 7 Maubelstr. 90 Mehrheimerstr. 369 Obere Str. 57 Taucherstraße 10 Walserweg 21 1 rue Alsace-Lorraine 2, rue du Commerce 12, rue des Bouchers 24, place Kléber 25, rue Lauriston 54, rue Royale 59 rue de l'Abbaye 67, avenue de l'Europe 67, rue des Cinquante Otages 184, chaussée de Tournai 265, boulevard Charonne Keskuskatu 45 Torikatu 38 Vinbæltet 34 23 Tsawassen Blvd. 3895 St Laurent Blvd 1055 W Broadway Alameda dos Canàrios, 891 Av. Brasil, 442 Av. Copacabana, 267 Av. dos Lusíadas, 23 Av. Inês de Castro, 414 Rua da Panificadora, 12 Rua do Mercado, 12 Rua do Paço, 67 Rua Orós, 92 Boulevard Tirou, 255 Rue Joseph-Bens 532 Geislweg 14 Kirchgasse 6 Av. del Libertador 900 Piso 20-A Plaza de Mayo 6 Walla Walla Butte Portland Boise Elgin Kirkland Eugene Anchorage Albuquerque Lander Seattle San Francisco London Luton North Ferriby Genève Bern Bräcke Luleå Stockholm Madrid Sevilla Barcelona Lisboa Stavern México D.F. Reggio Emilia Bergamo Torino Dublin Stuttgart München Mannheim Leipzig Münster Frankfurt a.M. Brandenburg Köln Berlin Cunewalde Aachen Toulouse Lyon Marseille Strasbourg Paris Nantes Reims Versailles Lille Helsinki Oulu København Tsawassen Montréal Vancouver São Paulo Campinas Rio de Janeiro Resende Charleroi Bruxelles Salzburg Graz Buenos Aires Klaus Tarantino Mary Stone Andrea Pamelsson Perry Farell Marcellus Wallace Mark Stark Ross The Boss Al Bundy Malcolm X Paul Smith Charles Oakley Alice Chain Vincent Vega Ian Wright Greg Thatcher Ray Banned Carl Montgomery John Cleez Al Yankovic David Foot Carl Perry Alfred Neumann Linda Haglund Urra Gurra Aktersnurra Staffan Blond Julio Iglesias Filemón El Cordobes Emilio Ilegal Jusep del pep Leopoldo Samba Vitor Baiha Akkurat Jonny Peloto Gomez Paco el Maco Sancho Panza Francisca Font Barceló Speedy Gonzales Anna Bella Luca Brassi Don Corleone Robert Bolero Ralf Schumaker Dieter Köln Herman Hinschler Helmuth Klein Heinz Disco Klaus Deum Dieter Rummernige Herman Schlusse Albert von Einstein George Essen Lars von Holstein Louise Davu Pierre Robert Bernard de Gaule Julie Binoché André Millard Jeanne d´Anjou Henry Renault Philippe de Laval Pierre Chardin Jaques Wilneuve Dizzi Gillespi Reijoo Haajanen Miiko Heikillä Preben Elkjaer James Hendersson James Belucci Joe Barry Jorge Alemaio Anna Figo Thomá Lindao Edson Arantes do Nascimento Mercedes Couto Giovanni Santhos Mariah Erdi Joe do Pintho Romario do Sauza Cheril Cow Marco Van Deum Herbert Bernstorf Lars Saalbach Emerson Fittipaldi Don Gerardo Victoria Abril @~k@%(~9~@}8g@٬\@@C$Z@St$c@p_ie@.$e@߾sm@:pΈbn@!rhn@6;Nёs@,v@/$͗@(\٦@PkwLb@1*
@Gx$@+Y+@n{k@@ܵk@Pk.@c4@r??@p_QB@`"ہJ@BiqP@2ZP@(mQ@\( R@sGR@y)2S@%䃞U@c=y W@'1[@A]@8gDiw]@Ǻp`@`@6;NMb@N@b@q=
-ףpc@՚d@bٍe@u$Q@le@\(ߌ@?ʍ@Onގ@B-@V-@lqȓ@9#J@p_@Ǻ@ z@&䃞MM@36<}@d`T5@|?5@x$(~1@\m3@
-ףp=jA@?C@MbE@pŏG@䥛 0L@d=yN@ZdkQ@C6nQ@7[ =R@?W[lR@uq
S@^)U@lV}V@y):W@QMZ@J+Z@:pΈF[@N@[@kw\@J.!>\@>٬\@MbH]@\(]@ ^@v^@?|_@saa@Tt$a@vq
Yc@y$(~nc@Sf@>yX5f@Vf@A`
-g@!ug@H.h@oh@mi@n{i@ףp=
-j@ j@(k@W,k@\(k@ڊel@W/'l@Cl{m@`vO*n@Ro@$p@Cp@E8q@$(~kq@37q@{P+r@ǘOr@@c]r@7gDio,s@|гYes@ss@48Es@
-t@ׁt@9Ov@K7A` w@rhw@Bi8y@/*y@X9v>z@1fz@6A`tz@/$z@b={@W2 |@jMm|@^)ˠ|@
-}@effff}@!u}@ ~@X9v~@Mb=@"~k@d]KH@$D@`TR'@ZB>踁@@!uq7@ŏ@gs@x#<@fa@QÆ@Gz(@?5^IF@\(@<,Ԛ@ c@ʡE@>yX"@fffff"@c@Nё\#@S.@`vOb@ʡEi@}?5^:@ffff毑@Ik@|?5@?@{GaA@̟@p=
-ףԞ@{0@ˡE3@阮@M@&S&@Ql@p=
-ko@46M@.*vp@ p@*Η|@S@Sc@
-T@F%uT@ѳYV@zGW@!lVCe@=yXf@QIr@sz@X9v@h"lxz(@ @w-!̟@fffff@C,@?8@!rh]J@?jS@Z@ڊ9\@--b@33333Ce@~jtQe@uq
e@&1f@ZӼf@tvi@9#J{i@DioIj@0'l@{Gl@3Im@@Pq@&1r@y):Ct@su@+!lv@QVx@ڊey@"~jy@yEz@H|@U0* @xԀ@镲,@lVy@HP@j oa@F@d`d@=yX@l1@~jt @Zdz@xL@/L
-Q@!Ac̻`@Aϊp@V@|?5n6@zGB@EZ@qZ@Qsׄc@):_d@ rd@9#J{7@C`";:@ `>@m4 B@gffffNE@AfI@ rhJ@XL@MjN@xN@T'O@\CO@E_pP@z/LJQ@(
Q@<,T@/L
-T@sFT@c]KU@|?5^V@#W@ꕲq(X@ǘVX@HPsX@}a2U0Y@0'[@S]@uq
`@1Z`@V-b@ףp=
-b@ׁsc@c@ZӼd@ףp=
-3d@p=
-sd@Sd@ e@Șe@_)jg@J4h@ni@fffffi@x&i@vNk@^)k@k@~jt-n@V/'n@H-o@{Po@!u,p@ףp=
-gp@fc]p@Q|q@|Pkq@HPq@9r@ڊer@Clr@Vs@+ٮs@J4s@"t@Zd;OLt@g
u@u@0Zu@/v@`"۵v@z6v@1Ziw@z6>sw@Q)y@|?5^6y@Ony@ rhz@xr{@NbX9{@&{@{G|@e]F}@p=
-ס@{P@ۊed@@K7^@vOj@+ٮ@