backup 3.0.27 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. data/LICENSE.md +1 -1
  2. data/README.md +139 -386
  3. data/bin/backup +1 -7
  4. data/lib/backup.rb +3 -9
  5. data/lib/backup/archive.rb +26 -20
  6. data/lib/backup/cleaner.rb +2 -2
  7. data/lib/backup/cli.rb +366 -0
  8. data/lib/backup/compressor/base.rb +2 -2
  9. data/lib/backup/compressor/gzip.rb +35 -1
  10. data/lib/backup/config.rb +1 -2
  11. data/lib/backup/database/base.rb +2 -2
  12. data/lib/backup/database/mongodb.rb +3 -3
  13. data/lib/backup/database/mysql.rb +3 -2
  14. data/lib/backup/database/postgresql.rb +3 -2
  15. data/lib/backup/database/riak.rb +18 -5
  16. data/lib/backup/dependency.rb +144 -93
  17. data/lib/backup/encryptor/base.rb +2 -2
  18. data/lib/backup/logger.rb +108 -110
  19. data/lib/backup/logger/console.rb +51 -0
  20. data/lib/backup/logger/logfile.rb +113 -0
  21. data/lib/backup/logger/syslog.rb +116 -0
  22. data/lib/backup/model.rb +67 -65
  23. data/lib/backup/notifier/base.rb +1 -1
  24. data/lib/backup/notifier/hipchat.rb +1 -1
  25. data/lib/backup/notifier/mail.rb +1 -1
  26. data/lib/backup/notifier/pushover.rb +6 -3
  27. data/lib/backup/packager.rb +4 -4
  28. data/lib/backup/pipeline.rb +17 -3
  29. data/lib/backup/splitter.rb +2 -2
  30. data/lib/backup/storage/base.rb +2 -2
  31. data/lib/backup/storage/cloudfiles.rb +2 -2
  32. data/lib/backup/storage/dropbox.rb +4 -4
  33. data/lib/backup/storage/ftp.rb +2 -2
  34. data/lib/backup/storage/local.rb +2 -2
  35. data/lib/backup/storage/ninefold.rb +2 -2
  36. data/lib/backup/storage/rsync.rb +3 -3
  37. data/lib/backup/storage/s3.rb +2 -2
  38. data/lib/backup/storage/scp.rb +2 -6
  39. data/lib/backup/storage/sftp.rb +2 -5
  40. data/lib/backup/syncer/base.rb +1 -1
  41. data/lib/backup/syncer/cloud/base.rb +15 -8
  42. data/lib/backup/syncer/rsync/local.rb +1 -1
  43. data/lib/backup/syncer/rsync/pull.rb +1 -1
  44. data/lib/backup/syncer/rsync/push.rb +1 -1
  45. data/lib/backup/utilities.rb +211 -0
  46. data/lib/backup/version.rb +1 -1
  47. data/templates/cli/{utility/archive → archive} +4 -8
  48. data/templates/cli/{utility/compressor → compressor}/bzip2 +0 -0
  49. data/templates/cli/{utility/compressor → compressor}/custom +0 -0
  50. data/templates/cli/{utility/compressor → compressor}/gzip +0 -0
  51. data/templates/cli/{utility/compressor → compressor}/lzma +0 -0
  52. data/templates/cli/{utility/compressor → compressor}/pbzip2 +0 -0
  53. data/templates/cli/config +68 -0
  54. data/templates/cli/{utility/database → database}/mongodb +1 -1
  55. data/templates/cli/{utility/database → database}/mysql +1 -1
  56. data/templates/cli/{utility/database → database}/postgresql +1 -1
  57. data/templates/cli/{utility/database → database}/redis +0 -0
  58. data/templates/cli/database/riak +20 -0
  59. data/templates/cli/{utility/encryptor → encryptor}/gpg +0 -0
  60. data/templates/cli/{utility/encryptor → encryptor}/openssl +0 -0
  61. data/templates/cli/{utility/model.erb → model.erb} +4 -4
  62. data/templates/cli/{utility/notifier → notifier}/campfire +0 -0
  63. data/templates/cli/{utility/notifier → notifier}/hipchat +0 -0
  64. data/templates/cli/{utility/notifier → notifier}/mail +0 -0
  65. data/templates/cli/{utility/notifier → notifier}/prowl +0 -0
  66. data/templates/cli/{utility/notifier → notifier}/pushover +0 -0
  67. data/templates/cli/{utility/notifier → notifier}/twitter +0 -0
  68. data/templates/cli/{utility/splitter → splitter} +0 -0
  69. data/templates/cli/{utility/storage → storage}/cloud_files +0 -0
  70. data/templates/cli/{utility/storage → storage}/dropbox +0 -0
  71. data/templates/cli/{utility/storage → storage}/ftp +0 -0
  72. data/templates/cli/{utility/storage → storage}/local +0 -0
  73. data/templates/cli/{utility/storage → storage}/ninefold +0 -0
  74. data/templates/cli/{utility/storage → storage}/rsync +0 -0
  75. data/templates/cli/{utility/storage → storage}/s3 +0 -0
  76. data/templates/cli/{utility/storage → storage}/scp +0 -0
  77. data/templates/cli/{utility/storage → storage}/sftp +0 -0
  78. data/templates/cli/{utility/syncer → syncer}/cloud_files +0 -0
  79. data/templates/cli/{utility/syncer → syncer}/rsync_local +0 -0
  80. data/templates/cli/{utility/syncer → syncer}/rsync_pull +0 -0
  81. data/templates/cli/{utility/syncer → syncer}/rsync_push +0 -0
  82. data/templates/cli/{utility/syncer → syncer}/s3 +0 -0
  83. metadata +55 -131
  84. data/.gitignore +0 -8
  85. data/.travis.yml +0 -10
  86. data/Gemfile +0 -28
  87. data/Guardfile +0 -23
  88. data/backup.gemspec +0 -32
  89. data/lib/backup/cli/helpers.rb +0 -93
  90. data/lib/backup/cli/utility.rb +0 -255
  91. data/spec-live/.gitignore +0 -6
  92. data/spec-live/README +0 -7
  93. data/spec-live/backups/config.rb +0 -83
  94. data/spec-live/backups/config.yml.template +0 -46
  95. data/spec-live/backups/models.rb +0 -184
  96. data/spec-live/compressor/custom_spec.rb +0 -30
  97. data/spec-live/compressor/gzip_spec.rb +0 -30
  98. data/spec-live/encryptor/gpg_keys.rb +0 -239
  99. data/spec-live/encryptor/gpg_spec.rb +0 -287
  100. data/spec-live/notifier/mail_spec.rb +0 -121
  101. data/spec-live/spec_helper.rb +0 -151
  102. data/spec-live/storage/dropbox_spec.rb +0 -151
  103. data/spec-live/storage/local_spec.rb +0 -83
  104. data/spec-live/storage/scp_spec.rb +0 -193
  105. data/spec-live/syncer/cloud/s3_spec.rb +0 -124
  106. data/spec/archive_spec.rb +0 -335
  107. data/spec/cleaner_spec.rb +0 -312
  108. data/spec/cli/helpers_spec.rb +0 -301
  109. data/spec/cli/utility_spec.rb +0 -411
  110. data/spec/compressor/base_spec.rb +0 -52
  111. data/spec/compressor/bzip2_spec.rb +0 -217
  112. data/spec/compressor/custom_spec.rb +0 -106
  113. data/spec/compressor/gzip_spec.rb +0 -217
  114. data/spec/compressor/lzma_spec.rb +0 -123
  115. data/spec/compressor/pbzip2_spec.rb +0 -165
  116. data/spec/config_spec.rb +0 -321
  117. data/spec/configuration/helpers_spec.rb +0 -247
  118. data/spec/configuration/store_spec.rb +0 -39
  119. data/spec/configuration_spec.rb +0 -62
  120. data/spec/database/base_spec.rb +0 -63
  121. data/spec/database/mongodb_spec.rb +0 -510
  122. data/spec/database/mysql_spec.rb +0 -411
  123. data/spec/database/postgresql_spec.rb +0 -353
  124. data/spec/database/redis_spec.rb +0 -334
  125. data/spec/database/riak_spec.rb +0 -176
  126. data/spec/dependency_spec.rb +0 -51
  127. data/spec/encryptor/base_spec.rb +0 -40
  128. data/spec/encryptor/gpg_spec.rb +0 -909
  129. data/spec/encryptor/open_ssl_spec.rb +0 -148
  130. data/spec/errors_spec.rb +0 -306
  131. data/spec/logger_spec.rb +0 -367
  132. data/spec/model_spec.rb +0 -666
  133. data/spec/notifier/base_spec.rb +0 -104
  134. data/spec/notifier/campfire_spec.rb +0 -217
  135. data/spec/notifier/hipchat_spec.rb +0 -211
  136. data/spec/notifier/mail_spec.rb +0 -316
  137. data/spec/notifier/prowl_spec.rb +0 -138
  138. data/spec/notifier/pushover_spec.rb +0 -123
  139. data/spec/notifier/twitter_spec.rb +0 -153
  140. data/spec/package_spec.rb +0 -61
  141. data/spec/packager_spec.rb +0 -213
  142. data/spec/pipeline_spec.rb +0 -259
  143. data/spec/spec_helper.rb +0 -60
  144. data/spec/splitter_spec.rb +0 -120
  145. data/spec/storage/base_spec.rb +0 -166
  146. data/spec/storage/cloudfiles_spec.rb +0 -254
  147. data/spec/storage/cycler_spec.rb +0 -247
  148. data/spec/storage/dropbox_spec.rb +0 -480
  149. data/spec/storage/ftp_spec.rb +0 -271
  150. data/spec/storage/local_spec.rb +0 -259
  151. data/spec/storage/ninefold_spec.rb +0 -343
  152. data/spec/storage/rsync_spec.rb +0 -362
  153. data/spec/storage/s3_spec.rb +0 -245
  154. data/spec/storage/scp_spec.rb +0 -233
  155. data/spec/storage/sftp_spec.rb +0 -244
  156. data/spec/syncer/base_spec.rb +0 -109
  157. data/spec/syncer/cloud/base_spec.rb +0 -515
  158. data/spec/syncer/cloud/cloud_files_spec.rb +0 -181
  159. data/spec/syncer/cloud/s3_spec.rb +0 -174
  160. data/spec/syncer/rsync/base_spec.rb +0 -98
  161. data/spec/syncer/rsync/local_spec.rb +0 -149
  162. data/spec/syncer/rsync/pull_spec.rb +0 -98
  163. data/spec/syncer/rsync/push_spec.rb +0 -333
  164. data/spec/version_spec.rb +0 -21
  165. data/templates/cli/utility/config +0 -32
  166. data/templates/cli/utility/database/riak +0 -11
data/spec-live/.gitignore DELETED
@@ -1,6 +0,0 @@
1
- backups/config.yml
2
- backups/data
3
- backups/log
4
- backups/.cache
5
- backups/.tmp
6
- tmp/
data/spec-live/README DELETED
@@ -1,7 +0,0 @@
1
- == spec-live ==
2
-
3
- This folder contains "Live" specs which test various features against
4
- the actual filesystem and/or real storage service accounts.
5
-
6
- These are only intended to be used by developers.
7
- Use at your own risk :)
@@ -1,83 +0,0 @@
1
- ##
2
- # Configuration Defaults
3
- #
4
- # Note that once config.rb has been loaded once and class defaults are set,
5
- # there's nothing clearing these between each test. Keep this in mind, as this
6
- # file will be loaded for every call to h_set_trigger() or h_set_single_model().
7
- # While not a problem, this wouldn't happen for a normal `backup perform ...`.
8
-
9
- Backup::Storage::Local.defaults do |storage|
10
- storage.path = SpecLive::TMP_PATH
11
- storage.keep = 2
12
- end
13
-
14
- # SSH operations can be tested against 'localhost'
15
- # To do this, in the config.yml file:
16
- # - set username/password for your current user
17
- # - set ip to 'localhost'
18
- # Although optional, it's recommended you set the 'path'
19
- # to the same path as Backup::SpecLive::TMP_PATH
20
- # i.e. '/absolute/path/to/spec-live/tmp'
21
- # This way, cleaning the "remote path" can be skipped.
22
- Backup::Storage::SCP.defaults do |storage|
23
- opts = SpecLive::CONFIG['storage']['scp']
24
-
25
- storage.username = opts['username']
26
- storage.password = opts['password']
27
- storage.ip = opts['ip']
28
- storage.port = opts['port']
29
- storage.path = opts['path']
30
- storage.keep = 2
31
- end
32
-
33
- Backup::Storage::Dropbox.defaults do |storage|
34
- opts = SpecLive::CONFIG['storage']['dropbox']
35
-
36
- storage.api_key = opts['api_key']
37
- storage.api_secret = opts['api_secret']
38
- storage.access_type = opts['access_type']
39
- storage.path = opts['path']
40
- storage.keep = 2
41
- end
42
-
43
- Backup::Notifier::Mail.defaults do |notifier|
44
- opts = SpecLive::CONFIG['notifier']['mail']
45
-
46
- notifier.on_success = true
47
- notifier.on_warning = true
48
- notifier.on_failure = true
49
-
50
- notifier.delivery_method = opts['delivery_method']
51
- notifier.from = opts['from']
52
- notifier.to = opts['to']
53
- notifier.address = opts['address']
54
- notifier.port = opts['port'] || 587
55
- notifier.domain = opts['domain']
56
- notifier.user_name = opts['user_name']
57
- notifier.password = opts['password']
58
- notifier.authentication = opts['authentication'] || 'plain'
59
- notifier.enable_starttls_auto = opts['enable_starttls_auto'] || true
60
- notifier.sendmail = opts['sendmail']
61
- notifier.sendmail_args = opts['sendmail_args']
62
- notifier.mail_folder = SpecLive::TMP_PATH
63
- end
64
-
65
- Backup::Syncer::Cloud::S3.defaults do |s3|
66
- opts = SpecLive::CONFIG['syncer']['cloud']['s3']
67
-
68
- s3.access_key_id = opts['access_key_id']
69
- s3.secret_access_key = opts['secret_access_key']
70
- s3.bucket = opts['bucket']
71
- s3.region = opts['region']
72
- s3.mirror = true
73
- end
74
-
75
- Backup::Encryptor::GPG.defaults do |enc|
76
- enc.gpg_homedir = File.join(SpecLive::TMP_PATH, 'gpg_home_tmp')
77
- end
78
-
79
- ##
80
- # Load the Models, unless h_set_single_model() is being used.
81
- if SpecLive.load_models
82
- instance_eval File.read(File.join(File.dirname(__FILE__), 'models.rb'))
83
- end
@@ -1,46 +0,0 @@
1
- ##
2
- # config.yml template
3
- # for usage, see:
4
- # spec-live/spec_helper.rb
5
- # spec-live/backups/config.rb
6
- ##
7
- ---
8
- storage:
9
- scp:
10
- specs_enabled: false
11
- username: <current user name>
12
- password: <password>
13
- ip: localhost
14
- port: 22
15
- path: /absolute/path/to/spec-live/tmp
16
- dropbox:
17
- specs_enabled: false
18
- api_key: <your key>
19
- api_secret: <your secret>
20
- path:
21
- timeout:
22
- notifier:
23
- mail:
24
- specs_enabled: false
25
- delivery_method: smtp
26
- from: <from email>
27
- to: <to email>
28
- address: smtp.gmail.com
29
- port: 587
30
- user_name: <user name>
31
- password: <password>
32
- authentication: plain
33
- enable_starttls_auto: true
34
- sendmail:
35
- sendmail_args:
36
- syncer:
37
- cloud:
38
- s3:
39
- specs_enabled: false
40
- access_key_id:
41
- secret_access_key:
42
- bucket:
43
- region:
44
- encryptor:
45
- gpg:
46
- specs_enabled: false
@@ -1,184 +0,0 @@
1
- ##
2
- # Models
3
-
4
- Backup::Model.new(:archive_local, 'test_label') do
5
- archive :test_archive, &SpecLive::ARCHIVE_JOB
6
- store_with Local
7
- end
8
-
9
- Backup::Model.new(:archive_scp, 'test_label') do
10
- archive :test_archive, &SpecLive::ARCHIVE_JOB
11
- store_with SCP
12
- end
13
-
14
- # To initialize the Dropbox session cache, run manually first using:
15
- # VERBOSE=1 rspec spec-live/storage/dropbox_spec.rb --tag init
16
- Backup::Model.new(:archive_dropbox, 'test_label') do
17
- archive :test_archive, &SpecLive::ARCHIVE_JOB
18
- store_with Dropbox
19
- end
20
-
21
- Backup::Model.new(:compressor_gzip_archive_local, 'test_label') do
22
- archive :test_archive, &SpecLive::ARCHIVE_JOB
23
- compress_with Gzip
24
- store_with Local
25
- end
26
-
27
- Backup::Model.new(:compressor_custom_archive_local, 'test_label') do
28
- archive :test_archive, &SpecLive::ARCHIVE_JOB
29
- compress_with Custom do |c|
30
- c.command = 'gzip -1'
31
- c.extension = '.foo'
32
- end
33
- store_with Local
34
- end
35
-
36
- Backup::Model.new(:notifier_mail, 'test_label') do
37
- notify_by Mail
38
- end
39
-
40
- Backup::Model.new(:notifier_mail_file, 'test_label') do
41
- notify_by Mail do |mail|
42
- mail.to = 'test@backup'
43
- mail.delivery_method = :file
44
- end
45
- end
46
-
47
- Backup::Model.new(:syncer_cloud_s3, 'test_label') do
48
- sync_with Cloud::S3 do |s3|
49
- s3.directories do
50
- add File.join(SpecLive::SYNC_PATH, 'dir_a')
51
- add File.join(SpecLive::SYNC_PATH, 'dir_b')
52
- end
53
- end
54
- end
55
-
56
- Backup::Model.new(:encryptor_gpg_asymmetric, 'test_label') do
57
- archive :test_archive, &SpecLive::ARCHIVE_JOB
58
- encrypt_with GPG do |e|
59
- # this is the default mode
60
- # e.mode = :asymmetric
61
-
62
- e.keys = {
63
- # backup03 public key (email as identifier)
64
- 'backup03@foo.com' => SpecLive::GPGKeys[:backup03][:public],
65
- # backup04 public key (long key id as identifier)
66
- '0F45932D3F24426D' => SpecLive::GPGKeys[:backup04][:public]
67
- }
68
-
69
- # The public keys for backup01 and backup02 will be in the system keyring
70
- # when this job is run. The public keys for backup03 and backup04 will be
71
- # imported from :keys above when they are not found in the system keyring.
72
- e.recipients = [
73
- # backup01 (short keyid)
74
- '16325C61',
75
- # backup02 (key fingerprint)
76
- 'F9A9 9BD8 A570 182F F190 037C 7118 9938 6A6A 175A',
77
- # backup03 (email)
78
- 'backup03@foo.com',
79
- # backup04 (long keyid)
80
- '0F45932D3F24426D'
81
- ]
82
- end
83
- store_with Local
84
- end
85
-
86
- Backup::Model.new(:encryptor_gpg_asymmetric_missing, 'test_label') do
87
- archive :test_archive, &SpecLive::ARCHIVE_JOB
88
- encrypt_with GPG do |e|
89
- e.mode = :asymmetric
90
-
91
- e.keys = {
92
- 'backup02@foo.com' => SpecLive::GPGKeys[:backup02][:public]
93
- }
94
-
95
- e.recipients = [
96
- 'backup01@foo.com', # in the system
97
- 'backup02@foo.com', # imported from #keys
98
- 'backupfoo@foo.com' # a recipient with no public key
99
- ]
100
- end
101
- store_with Local
102
- end
103
-
104
- Backup::Model.new(:encryptor_gpg_asymmetric_fail, 'test_label') do
105
- archive :test_archive, &SpecLive::ARCHIVE_JOB
106
- encrypt_with GPG do |e|
107
- # this is the default mode
108
- # e.mode = :asymmetric
109
-
110
- # no recipients have public keys available
111
- e.recipients = [
112
- 'backupfoo@foo.com',
113
- 'backupfoo2@foo.com'
114
- ]
115
- end
116
- store_with Local
117
- end
118
-
119
- Backup::Model.new(:encryptor_gpg_symmetric, 'test_label') do
120
- archive :test_archive, &SpecLive::ARCHIVE_JOB
121
- encrypt_with GPG do |e|
122
- e.mode = :symmetric
123
- e.passphrase = 'a secret'
124
- end
125
- store_with Local
126
- end
127
-
128
- Backup::Model.new(:encryptor_gpg_symmetric_with_config, 'test_label') do
129
- archive :test_archive, &SpecLive::ARCHIVE_JOB
130
- encrypt_with GPG do |e|
131
- e.mode = :symmetric
132
- e.passphrase = 'a secret'
133
- e.gpg_config = <<-EOS
134
- personal-cipher-preferences AES256 CAST5
135
- EOS
136
- end
137
- store_with Local
138
- end
139
-
140
- Backup::Model.new(:encryptor_gpg_both, 'test_label') do
141
- archive :test_archive, &SpecLive::ARCHIVE_JOB
142
- encrypt_with GPG do |e|
143
- e.mode = :both
144
- e.passphrase = 'a secret'
145
-
146
- e.keys = {
147
- # backup03 public key (email as identifier)
148
- 'backup03@foo.com' => SpecLive::GPGKeys[:backup03][:public]
149
- }
150
-
151
- # The public key for backup01 will be in the system keyring.
152
- # The public key for backup03 will be imported from :keys.
153
- e.recipients = [
154
- # backup01 (short keyid)
155
- '16325C61',
156
- # backup03 (email)
157
- 'backup03@foo.com'
158
- ]
159
- end
160
- store_with Local
161
- end
162
-
163
- Backup::Model.new(:encryptor_gpg_both_no_asymmetric, 'test_label') do
164
- archive :test_archive, &SpecLive::ARCHIVE_JOB
165
- encrypt_with GPG do |e|
166
- e.mode = :both
167
- e.passphrase = 'a secret'
168
-
169
- # valid entry for backup04, but this is not one of the recipients
170
- e.keys = {
171
- 'backup04@foo.com' => SpecLive::GPGKeys[:backup04][:public]
172
- }
173
-
174
- # no keys will be found for these,
175
- # so only symmetric encryption will be possible for this backup
176
- e.recipients = [
177
- # backup01 (short keyid)
178
- '16325C61',
179
- # backup03 (email)
180
- 'backup03@foo.com'
181
- ]
182
- end
183
- store_with Local
184
- end
@@ -1,30 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require File.expand_path('../../spec_helper.rb', __FILE__)
4
-
5
- describe 'Compressor::Custom' do
6
-
7
- def archive_file_for(model)
8
- File.join(
9
- Backup::SpecLive::TMP_PATH,
10
- "#{model.trigger}", model.time, "#{model.trigger}.tar"
11
- )
12
- end
13
-
14
- def archive_contents_for(model)
15
- archive_file = archive_file_for(model)
16
- %x{ tar -tvf #{archive_file} }
17
- end
18
-
19
- it 'should compress an archive' do
20
- model = h_set_trigger('compressor_custom_archive_local')
21
- model.perform!
22
- archive_file = archive_file_for(model)
23
- File.exist?(archive_file).should be_true
24
- archive_contents_for(model).should match(
25
- /compressor_custom_archive_local\/archives\/test_archive\.tar\.foo/
26
- )
27
- File.stat(archive_file).size.should be > 0
28
- end
29
-
30
- end
@@ -1,30 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require File.expand_path('../../spec_helper.rb', __FILE__)
4
-
5
- describe 'Compressor::Gzip' do
6
-
7
- def archive_file_for(model)
8
- File.join(
9
- Backup::SpecLive::TMP_PATH,
10
- "#{model.trigger}", model.time, "#{model.trigger}.tar"
11
- )
12
- end
13
-
14
- def archive_contents_for(model)
15
- archive_file = archive_file_for(model)
16
- %x{ tar -tvf #{archive_file} }
17
- end
18
-
19
- it 'should compress an archive' do
20
- model = h_set_trigger('compressor_gzip_archive_local')
21
- model.perform!
22
- archive_file = archive_file_for(model)
23
- File.exist?(archive_file).should be_true
24
- archive_contents_for(model).should match(
25
- /compressor_gzip_archive_local\/archives\/test_archive\.tar\.gz/
26
- )
27
- File.stat(archive_file).size.should be > 0
28
- end
29
-
30
- end
@@ -1,239 +0,0 @@
1
- # encoding: utf-8
2
-
3
- module Backup
4
- module SpecLive
5
- GPGKeys = Hash.new {|h,k| h[k] = {} }
6
-
7
- GPGKeys[:backup01][:long_id] = '8F5D150616325C61'
8
- GPGKeys[:backup01][:public] = <<-EOS
9
- -----BEGIN PGP PUBLIC KEY BLOCK-----
10
- Version: GnuPG v1.4.12 (GNU/Linux)
11
-
12
- mI0EUBR6CwEEAMVSlFtAXO4jXYnVFAWy6chyaMw+gXOFKlWojNXOOKmE3SujdLKh
13
- kWqnafx7VNrb8cjqxz6VZbumN9UgerFpusM3uLCYHnwyv/rGMf4cdiuX7gGltwGb
14
- dwP18gzdDanXYvO4G7qtk8DH1lRI/TnLH8wAoY/DthSR//wcP33GxRnrABEBAAG0
15
- HkJhY2t1cCBUZXN0IDxiYWNrdXAwMUBmb28uY29tPoi4BBMBAgAiBQJQFHoLAhsD
16
- BgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRCPXRUGFjJcYZc5A/91HQ4+BXUw
17
- KUHmpGyD+6b42xl3eBdmBVimCYTgfRUyRQEDWzHV4a3cYWwe30J/LzfFn1E6uVwz
18
- 6SHtzwZddWwONRgC/Q7V0TrnLeuv46MKoB24EFqfbr0kosuZgHPuK4h+rLmaPVCM
19
- kv9DcKCupGnFzoaZ7tdgQAXzGepZQZU0sbiNBFAUegsBBACXX6cGjaENoOMyibXh
20
- HLlEOKWwlxDgo3bSu6U8kISUmwxH/MO4I/u7BAQBczitNYSWovlbvCcxCy4h12qj
21
- gruN5INIDGsEfDSWcN3lxBZ+9J+FhngBjETeADFaPxoele9wVGdIYdLIP6RntK/D
22
- 6F2ER8sb57YYtK50iyyuYQqSeQARAQABiJ8EGAECAAkFAlAUegsCGwwACgkQj10V
23
- BhYyXGEq7AP/Y/k1A6nrCC6bfkHFMJmEJDe0Wb6q8P3gcBqNuf8iOwk53UdoXU0Q
24
- JcPAQd/sJy6914huN2dzbVCSchSkLRXgejI0Xf5go1sDzspVKEflu0CWZ3A976QH
25
- mLekS3xntUhhgHKc4lhf4IVBqG4cFmwSZ0tZEJJUSESb3TqkkdnNLjE=
26
- =KEW+
27
- -----END PGP PUBLIC KEY BLOCK-----
28
- EOS
29
- GPGKeys[:backup01][:private] = <<-EOS
30
- -----BEGIN PGP PRIVATE KEY BLOCK-----
31
- Version: GnuPG v1.4.12 (GNU/Linux)
32
-
33
- lQHYBFAUegsBBADFUpRbQFzuI12J1RQFsunIcmjMPoFzhSpVqIzVzjiphN0ro3Sy
34
- oZFqp2n8e1Ta2/HI6sc+lWW7pjfVIHqxabrDN7iwmB58Mr/6xjH+HHYrl+4BpbcB
35
- m3cD9fIM3Q2p12LzuBu6rZPAx9ZUSP05yx/MAKGPw7YUkf/8HD99xsUZ6wARAQAB
36
- AAP/VJDiogUAjtK7SNH4BcU6qjxWK4pyQkcE8LcOvKbn48bcXtJrtg7GWpYrNxjI
37
- Mg/nHHt6Lpkqg3RmI0ILMzOj5TukhmJnB/ieogFyuiVzymcMdkcx8PRNXIoF90Au
38
- 8yp5ZgXdStmIrlxh4ofJsas8YWsVynb+r6FT2UrAjYT3vAECANoCF26P14ZtGQJ4
39
- eT4a19wzlcIDMuKFaXlB5WYCnQi43ngKn/mjdQrNfpfSPNF+oCHlWGisz0fg/51+
40
- NXg46+sCAOe1pm8K6qO20SzkAW0b9Hzk0b0JWJiHk1QiB1gR9KZffC/8Y7rqYaiG
41
- Sbtyc3ujjayFdc90bwZeSkzrCvO/CgEB/3jiuZiAOov2JFMMPzp7S9SS3CN8nopp
42
- xupeE6uH3Kxp24XYgLxfRO9iqZK/BRlkb5fUKw8u08J5439X9o9mBUOf4bQeQmFj
43
- a3VwIFRlc3QgPGJhY2t1cDAxQGZvby5jb20+iLgEEwECACIFAlAUegsCGwMGCwkI
44
- BwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEI9dFQYWMlxhlzkD/3UdDj4FdTApQeak
45
- bIP7pvjbGXd4F2YFWKYJhOB9FTJFAQNbMdXhrdxhbB7fQn8vN8WfUTq5XDPpIe3P
46
- Bl11bA41GAL9DtXROuct66/jowqgHbgQWp9uvSSiy5mAc+4riH6suZo9UIyS/0Nw
47
- oK6kacXOhpnu12BABfMZ6llBlTSxnQHYBFAUegsBBACXX6cGjaENoOMyibXhHLlE
48
- OKWwlxDgo3bSu6U8kISUmwxH/MO4I/u7BAQBczitNYSWovlbvCcxCy4h12qjgruN
49
- 5INIDGsEfDSWcN3lxBZ+9J+FhngBjETeADFaPxoele9wVGdIYdLIP6RntK/D6F2E
50
- R8sb57YYtK50iyyuYQqSeQARAQABAAP6Akx2AvtBheKqnJIl3cn5FWxWS3Q/Jygi
51
- +2rVJNJYKbu2hVJ/xDMLWoZNC3AXsof95X3f/e4sJVpN/FPS/IdqqBmZpREOzash
52
- fWAjs6j7Z7lQEuxKvdSdcy4olzcYGOegYaZpL0B9eeOtX3Hb4JXHwp0i9NwFlXgg
53
- MR10rIy48qECAMBEW64UAaZ31/Q1P0NXfMYTm+vogrAi8lsVdSAjDBAKtAD3+mGD
54
- JGymg0R6uzw9xDijN9HgBi55TfCAiVoVhiECAMmNHHuypUMVsPstBtUEELwDHH7K
55
- acWFNhi6x4Ccl1C7xncKK6BedjjwP8K06hBjWAkBzNUwX79N0Lm+ob9O0VkB+wdE
56
- ykurS0qEob/PiLBA5ksWRA1EKLQ/PjEmSxYJAldVLyKtUPtfyXVKTpZ2xCwuLi/m
57
- sspaiPeTJp7Gtr1l/smYf4ifBBgBAgAJBQJQFHoLAhsMAAoJEI9dFQYWMlxhKuwD
58
- /2P5NQOp6wgum35BxTCZhCQ3tFm+qvD94HAajbn/IjsJOd1HaF1NECXDwEHf7Ccu
59
- vdeIbjdnc21QknIUpC0V4HoyNF3+YKNbA87KVShH5btAlmdwPe+kB5i3pEt8Z7VI
60
- YYBynOJYX+CFQahuHBZsEmdLWRCSVEhEm906pJHZzS4x
61
- =ls9W
62
- -----END PGP PRIVATE KEY BLOCK-----
63
- EOS
64
-
65
- GPGKeys[:backup02][:long_id] = '711899386A6A175A'
66
- GPGKeys[:backup02][:public] = <<-EOS
67
- -----BEGIN PGP PUBLIC KEY BLOCK-----
68
- Version: GnuPG v1.4.12 (GNU/Linux)
69
-
70
- mI0EUBR6JQEEAMPuY4qoKR7MpZA7D+KRrhiJRCT8t5F4IZ+gq7FBCfwoopcStlin
71
- nTGRL1F/UEngu5xHgLsERzPdKNoTpoy1aCcgB7i9vyi2bA3iNGs1YzWqf1vGJxEp
72
- +CXXtlBU+QYod6wRMK4cHKVjPaD+Ga+saU1Pz9tBGYAbADYVmhJd7R21ABEBAAG0
73
- HkJhY2t1cCBUZXN0IDxiYWNrdXAwMkBmb28uY29tPoi4BBMBAgAiBQJQFHolAhsD
74
- BgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRBxGJk4amoXWjJxA/sG60qZMn40
75
- IP0pjuY+3kc5199xcavxgHZdQTBq2vrJHzr3K8Zk8xxSCADRJf4++t4+8yG7g9rk
76
- bmEAeGoFBIbdx7zGcxYIe5g9UG/+eDCJ44HCb0v8vHUT7iqt5Jk6cryYtcYvqO6I
77
- 84HXdXz4rCMCUeRP4ceMCZB6GZKDXR8zoriNBFAUeiUBBADEEOUdfCmwJ5BEPWzm
78
- QTGcp2dSY8SgpbZtk23LvWIlEziYflIqOGeL623AOBb9S2FChR+zPyOA9D3LEZrA
79
- PF8TS3YY+qjBdiXLKchRr5y2Kwylh/vVdcCcgTjfPkga4pGq+cHBOevPiqAvoCtO
80
- ntN7+Cqk3B7nWTPQRFDQJVThwwARAQABiJ8EGAECAAkFAlAUeiUCGwwACgkQcRiZ
81
- OGpqF1oNNgP/adkSZZVaYy/JEHjjrtC9UwirSluAdHQZGPGv/FHaFou+4mlLi0+R
82
- gQLieU+3AHFSWVYMNjIsSjA4hhMLchteFlJnbkGAFUaA2QUoyf7cSSmdpNKQdDdZ
83
- oe3OXEQM2pUTEwE9AqKXthrSMQuJ5bozm8zHm/CohZPHGTeQH75Kq/4=
84
- =AgbQ
85
- -----END PGP PUBLIC KEY BLOCK-----
86
- EOS
87
- GPGKeys[:backup02][:private] = <<-EOS
88
- -----BEGIN PGP PRIVATE KEY BLOCK-----
89
- Version: GnuPG v1.4.12 (GNU/Linux)
90
-
91
- lQHYBFAUeiUBBADD7mOKqCkezKWQOw/ika4YiUQk/LeReCGfoKuxQQn8KKKXErZY
92
- p50xkS9Rf1BJ4LucR4C7BEcz3SjaE6aMtWgnIAe4vb8otmwN4jRrNWM1qn9bxicR
93
- Kfgl17ZQVPkGKHesETCuHBylYz2g/hmvrGlNT8/bQRmAGwA2FZoSXe0dtQARAQAB
94
- AAP9Ek+8U+Alf7BmpNUwRd+Ros9pY/+OdHUCx3VvtnA6q6tsjqv8CMsZgOFtx7Mb
95
- YNw1DIUOPexHb0xzHfaKMUpfAmc4PRYnEiggloT+UmB/Hs2tHfeE3hONiDDD9PMU
96
- PiFmm2d+P0pRVTZUrioBaACWpu5YS03I6SC0zDdJeJapk10CANvaaRUZwBqpccfR
97
- MFuV78NYPDkgwKuIJzMRFvp2PnEYPKmS7Ivz5ZimwltDukEOdmTCUAjW6iibKav5
98
- EFmENSMCAOQlGzr3kQRNbcTWh4MYqQ0mDS0Gv9IWZR1DJBPziWnaMqvMyRrFK031
99
- WXzHFDkhbph/HjZ0M33e7bsaLfBsq0cB/Ag+/9rJyTAOyCgbx4VNeipuseiLW3rn
100
- gE5UdJa2FHpZcJqHk81IssCTVLnU3NADH0Eg6rVB4/31L1CtlkxgxZiXWbQeQmFj
101
- a3VwIFRlc3QgPGJhY2t1cDAyQGZvby5jb20+iLgEEwECACIFAlAUeiUCGwMGCwkI
102
- BwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEHEYmThqahdaMnED+wbrSpkyfjQg/SmO
103
- 5j7eRznX33Fxq/GAdl1BMGra+skfOvcrxmTzHFIIANEl/j763j7zIbuD2uRuYQB4
104
- agUEht3HvMZzFgh7mD1Qb/54MInjgcJvS/y8dRPuKq3kmTpyvJi1xi+o7ojzgdd1
105
- fPisIwJR5E/hx4wJkHoZkoNdHzOinQHXBFAUeiUBBADEEOUdfCmwJ5BEPWzmQTGc
106
- p2dSY8SgpbZtk23LvWIlEziYflIqOGeL623AOBb9S2FChR+zPyOA9D3LEZrAPF8T
107
- S3YY+qjBdiXLKchRr5y2Kwylh/vVdcCcgTjfPkga4pGq+cHBOevPiqAvoCtOntN7
108
- +Cqk3B7nWTPQRFDQJVThwwARAQABAAP0CszwvLeNuTt80e53OXmOmYJZ6zhzRz2k
109
- kiX+LwzoRKjYycFdFz3gCqiDj9w1Pq6Pcx030Wmh+tI07znhkXGG6WgEdg3WMBa0
110
- ephoNZKsmU2Xhbpf/au8uNwXLtaCEgZoC04JGlGzbX4gJXyUooW+/paxZMQFWFlM
111
- ztf04oIHFQIA2+wOHvJc3HxP0I1Gtfx9bf27UKp1O/4te3m8yOZuIb8gAhlvqkJr
112
- q+HcJ6604c8vKBHA08F+E6EJ8Sdt/eMlTwIA5Dr4AmGEKqkk92FuXm6R0ruo9Bm3
113
- Ep7eFCjRul5lKV/lTF88+KLrzMzho1E/9BgiOKvm7Z1yQTZQUAHEwcqHTQIAusG5
114
- gr2CASWpXbCxX6DWl8n7hdWAhGR0wHWk3ValNl0hLzxMx2Icf2ZWZ3rZw2/JsLiQ
115
- oujz1T1DWgxsNyZaraPsiJ8EGAECAAkFAlAUeiUCGwwACgkQcRiZOGpqF1oNNgP/
116
- adkSZZVaYy/JEHjjrtC9UwirSluAdHQZGPGv/FHaFou+4mlLi0+RgQLieU+3AHFS
117
- WVYMNjIsSjA4hhMLchteFlJnbkGAFUaA2QUoyf7cSSmdpNKQdDdZoe3OXEQM2pUT
118
- EwE9AqKXthrSMQuJ5bozm8zHm/CohZPHGTeQH75Kq/4=
119
- =+a/7
120
- -----END PGP PRIVATE KEY BLOCK-----
121
- EOS
122
-
123
- GPGKeys[:backup03][:long_id] = '5847D49DD791E4FA'
124
- GPGKeys[:backup03][:public] = <<-EOS
125
- -----BEGIN PGP PUBLIC KEY BLOCK-----
126
- Version: GnuPG v1.4.12 (GNU/Linux)
127
-
128
- mI0EUBR4LgEEAL6TxhYYNEirawnp/fmc0TwKYVSiTk60qGJyspEj0QKJ3MmunC/o
129
- YX+5k8HN68BKP7xkJyHYFdXCJn2HqSbj0T7oV4scQGLJSO5adNa/6uMDZIA6Ptt4
130
- UFOwdc8bnV9sDQTdrp2Gqsxi3f34WX0DV7/KrMD/jQJ9hiWphXSmvaV9ABEBAAG0
131
- HkJhY2t1cCBUZXN0IDxiYWNrdXAwM0Bmb28uY29tPoi4BBMBAgAiBQJQFHguAhsD
132
- BgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRBYR9Sd15Hk+shkA/4yev3zyK+/
133
- jPZQgFLq10biRDYMdWk4ysHCkSbBi4GMnjIanBFk6ggbH/jQIb79oZRv2MB/N8Ag
134
- 4s1oZdC5W1gSCg4m4pUB06NkKD4NvKAHHzsfr93farAct1zBQJ19e2ErFeo2Bb5G
135
- uAvf2VWziMQD9aB0lF6tf/CToeWp+2xK77iNBFAUeC4BBADGwKc66SFldjN9dIxk
136
- NYWLwCSvEgsOUdQpYckWLeUFnvKMpOW9+0Q5fc7QZuTs4TnT6cHjKk7F4ZQpMlqy
137
- vc5H99vfp+/fus4LyAYIZKXmuc44SWwxU0y2MsGguFZbWKctQLquKD3uk3S8LPvY
138
- wYn5weLVOhoUgbYGi6HeK8hkuQARAQABiJ8EGAECAAkFAlAUeC4CGwwACgkQWEfU
139
- ndeR5PqQIQP8DMrzFSpyOEsxWRC8x4dhBtpptjO2MIS9FsX9pmycC52V9mCQX5pb
140
- 5ZN6YPHOArYNUQfrXGRrOQFAPuNaucet/w39KIOmMZGPRGzOkTmp4AEhO7fKtuw8
141
- /oWOO6hlX/rG4JNZUu3DQEt8WKCV9dHGxNWkxEptRA/CRYW4aj0MkaE=
142
- =dxCg
143
- -----END PGP PUBLIC KEY BLOCK-----
144
- EOS
145
- GPGKeys[:backup03][:private] = <<-EOS
146
- -----BEGIN PGP PRIVATE KEY BLOCK-----
147
- Version: GnuPG v1.4.12 (GNU/Linux)
148
-
149
- lQHYBFAUeC4BBAC+k8YWGDRIq2sJ6f35nNE8CmFUok5OtKhicrKRI9ECidzJrpwv
150
- 6GF/uZPBzevASj+8ZCch2BXVwiZ9h6km49E+6FeLHEBiyUjuWnTWv+rjA2SAOj7b
151
- eFBTsHXPG51fbA0E3a6dhqrMYt39+Fl9A1e/yqzA/40CfYYlqYV0pr2lfQARAQAB
152
- AAP9HVrYQHd+eDIVRPvqr7vwu7mSl+1/N97ab/2gVTxp2aUAIf24F6YI/JpKcOgF
153
- 2ALn0d4wa+VjqZ8j/CJ9Et01EeIkEl9rDBVHLFKLpEABSRCCPpYPBhNqKgRQnLBl
154
- M9kb6OxlBF0Y2L7oonq19Txer8FNB724m7yvBlWQko5id6ECAND9Cgn/YVuj83Es
155
- DEBMjyAysgs3L69CoKQRL02PULbfVgabKqKqFJKDZr4DVyVo6v0L/c9pvnrz5GZG
156
- McGH390CAOlyfn9fWtNjMci+DZ2ZXjut8FXnU+ChyGoc62brcQ0YE1767pyIpmxe
157
- sG06jTMPpmBSA1xbMpScfLQehnLJUiEB/3f3U/8UiUTmB8bWe2JpHefJAn3Y8VLr
158
- tLXujEmYqrn6kUNo1UgIodLtlKY/HfYm6gvcBl5W4+z7FnDBWwDIlX6e/7QeQmFj
159
- a3VwIFRlc3QgPGJhY2t1cDAzQGZvby5jb20+iLgEEwECACIFAlAUeC4CGwMGCwkI
160
- BwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEFhH1J3XkeT6yGQD/jJ6/fPIr7+M9lCA
161
- UurXRuJENgx1aTjKwcKRJsGLgYyeMhqcEWTqCBsf+NAhvv2hlG/YwH83wCDizWhl
162
- 0LlbWBIKDibilQHTo2QoPg28oAcfOx+v3d9qsBy3XMFAnX17YSsV6jYFvka4C9/Z
163
- VbOIxAP1oHSUXq1/8JOh5an7bErvnQHYBFAUeC4BBADGwKc66SFldjN9dIxkNYWL
164
- wCSvEgsOUdQpYckWLeUFnvKMpOW9+0Q5fc7QZuTs4TnT6cHjKk7F4ZQpMlqyvc5H
165
- 99vfp+/fus4LyAYIZKXmuc44SWwxU0y2MsGguFZbWKctQLquKD3uk3S8LPvYwYn5
166
- weLVOhoUgbYGi6HeK8hkuQARAQABAAP9G+yT4lFAXbC8fb8a/XZOl8qsbMN4da/W
167
- AuVn+vuCPqatFckSNT3BAWHVZY7bUZO4S/d/A/NdA2zU4+/c8dl8inzv5tAmVFQY
168
- w9XYZoA8d4GS+IflmVAzu8aWJlQLfMI8HKtwrf4gpSjZFsLIe9E/xQSgGWt1WXJ5
169
- fbgbBKBLRB0CANF5C0VHOg/zIc7AODCi9GYqYWxQE0MiMhh1SzuG/NVHke+ldhqb
170
- ogV+TMBAR8PCRNf64cKtXyJ2u5ZnXlSBWdUCAPLmCZBCFW3hm/26fdAovNHA53HZ
171
- ucxhwrLP0Ks1+vr779JMypl6QVYbbHXaI7oyRFKg5KOdz4S2ij213gVOzVUCAKy1
172
- MftwhFXCrQwfuA8d2rnro4WqreNyzRj/7QL11N8oQ1XasHCuuOVpDVyuBxtwGLG3
173
- KUeriIODL6Bo/RevX0an8YifBBgBAgAJBQJQFHguAhsMAAoJEFhH1J3XkeT6kCED
174
- /AzK8xUqcjhLMVkQvMeHYQbaabYztjCEvRbF/aZsnAudlfZgkF+aW+WTemDxzgK2
175
- DVEH61xkazkBQD7jWrnHrf8N/SiDpjGRj0RszpE5qeABITu3yrbsPP6FjjuoZV/6
176
- xuCTWVLtw0BLfFiglfXRxsTVpMRKbUQPwkWFuGo9DJGh
177
- =6CYb
178
- -----END PGP PRIVATE KEY BLOCK-----
179
- EOS
180
-
181
- GPGKeys[:backup04][:long_id] = '0F45932D3F24426D'
182
- GPGKeys[:backup04][:public] = <<-EOS
183
- -----BEGIN PGP PUBLIC KEY BLOCK-----
184
- Version: GnuPG v1.4.12 (GNU/Linux)
185
-
186
- mI0EUBR40wEEAMLAMVwpXCeEz1QZPJc8RFwAUBZRc/FYZ+CY4RKfQKZPuBMyzz3y
187
- mk3gFB8raw2nycH00zwrP/qm/gIBzpCza+87uqGrB8bezgHoU1CaFnO0ZNUzyB8j
188
- FsaQ/7BScjFNQp4RvbryZJUMXJ0V8fV9mQMe+O83CskabLCS4UY6EhWXABEBAAG0
189
- HkJhY2t1cCBUZXN0IDxiYWNrdXAwNEBmb28uY29tPoi4BBMBAgAiBQJQFHjTAhsD
190
- BgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRAPRZMtPyRCbU30A/0YU8U7EOKd
191
- 5jSKhkAN50n4Cvwr0uOfC3UoJHInglRc+hDLB5ZF5GMqSfLYIb6/saY99Xb76l7i
192
- k/0Q+rpk0AJ/dbY2ARrPqetleTPBsjrQbj9pzU4yvpYohpippjUbGAo74ssRGJoX
193
- 28O98TXn8+q3bcz7bbLBmYj1Fy4QrSpBj7iNBFAUeNMBBADNBWFF0UFiPOCh9g3P
194
- qOAYOXRsmEpLwGBGUB5ZdWzkIGrvs3KjTxIgy+uvx5Q8nX7+OLePaR9BM0qyryzz
195
- LLjEKuaeDk1KelZ6/aV4ErgBUfVDs8pniLrSUqD65o18PL+T6nQ4aUYpgcqdb7t/
196
- /by/yzt0+eEaAoArm0B8IdzB/QARAQABiJ8EGAECAAkFAlAUeNMCGwwACgkQD0WT
197
- LT8kQm2LDgP/cUpWPR/GVdwLlbUIWBh37lLHEEuppZFg2P15Pv0UK9pNxCFhGouS
198
- eBXW8xC/mvOrf7mj/tEV3CxGvIFdebtraEwLUQW0109vWHNclK6/SvmSNcaPo1t0
199
- FtsIP4HI4ymvvTKUObfQliRdk1u1wY7sCWGarQgN9NtHuuyYP5+wmYg=
200
- =LfdH
201
- -----END PGP PUBLIC KEY BLOCK-----
202
- EOS
203
- GPGKeys[:backup04][:private] = <<-EOS
204
- -----BEGIN PGP PRIVATE KEY BLOCK-----
205
- Version: GnuPG v1.4.12 (GNU/Linux)
206
-
207
- lQHYBFAUeNMBBADCwDFcKVwnhM9UGTyXPERcAFAWUXPxWGfgmOESn0CmT7gTMs89
208
- 8ppN4BQfK2sNp8nB9NM8Kz/6pv4CAc6Qs2vvO7qhqwfG3s4B6FNQmhZztGTVM8gf
209
- IxbGkP+wUnIxTUKeEb268mSVDFydFfH1fZkDHvjvNwrJGmywkuFGOhIVlwARAQAB
210
- AAP8C0NOjNFu3Rw5r1fsS092y/P6rb0VMv0quMWup+3iMRwa0wVqZd9CHESGyrdZ
211
- 8BwRjNrfXTNKdnEHmfnHxqeRvit+WRPCuhGcRTNJ8UTBPw4XMY/UYXHIXQGXwqk6
212
- lzd+UQvqyZPv3ukuChDrXuCTG+443WFfHxl4S7PAn3aTwjUCANQjjqSweQZAHvn0
213
- XXcnTNRDV8Bf+Sl7rxhMcBUJhFu3ALBWosZDI/zYTDQ/FZqbM8A9Poh6cnB2TS/S
214
- 47kNwDMCAOsESXIs/RBg2RDactjqxj5TVn/T0PMZ1AhV2BPl2RmP/bnwyBWy0O9N
215
- V3hKY0ArEEpcNf8HuRz7/nOduCtEYQ0CAN2AODbYyG/sL+wH0k392fpnsWmdYs4N
216
- 21AgfPY8U3Oyrodgjz1hU3C3dxyE3co4sU42d3sLI2tpxa0xy6mHetKdbLQeQmFj
217
- a3VwIFRlc3QgPGJhY2t1cDA0QGZvby5jb20+iLgEEwECACIFAlAUeNMCGwMGCwkI
218
- BwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEA9Fky0/JEJtTfQD/RhTxTsQ4p3mNIqG
219
- QA3nSfgK/CvS458LdSgkcieCVFz6EMsHlkXkYypJ8tghvr+xpj31dvvqXuKT/RD6
220
- umTQAn91tjYBGs+p62V5M8GyOtBuP2nNTjK+liiGmKmmNRsYCjviyxEYmhfbw73x
221
- Nefz6rdtzPttssGZiPUXLhCtKkGPnQHYBFAUeNMBBADNBWFF0UFiPOCh9g3PqOAY
222
- OXRsmEpLwGBGUB5ZdWzkIGrvs3KjTxIgy+uvx5Q8nX7+OLePaR9BM0qyryzzLLjE
223
- KuaeDk1KelZ6/aV4ErgBUfVDs8pniLrSUqD65o18PL+T6nQ4aUYpgcqdb7t//by/
224
- yzt0+eEaAoArm0B8IdzB/QARAQABAAP9H1IfFidtsbBTMOsCGSNXeNvuKVjqoL/2
225
- 9UbwHAKQbBl3vL7RWJmPz2rXyrbWspvs9rF7eXE50SAg3UNdvpiqcSdBwC4VSDNe
226
- VSbKaZ5MmqapC7ioLH/FEcvZgaZfTsTsLC10CIZgisW+z+zKq2fafwSI5o2XMuoE
227
- /iuai9z6ZoECANEKpjytZB93+O2fUWPG7BjIzVUZGIeSxGKPze9jgQloHAou5sH8
228
- WygPVlQzy9Xxt7Z9/QrZlGdalyeDQaoC6dkCAPsThN0K0s2pabEfMtYOneJzR5Xs
229
- ze6aqs6+FpHikAISMswd5EHnfPtKA51bGxWKAxgeCqNMpf8tJMAFCmj2fsUB/3Z5
230
- IZJE+OmdiMDm81yDNpK801RZAiySpbZ5CEaWB/BuuTIyG7k/dtSnWtodEOEcEjFs
231
- yBaY+gUfFbKHBatQN7qf2oifBBgBAgAJBQJQFHjTAhsMAAoJEA9Fky0/JEJtiw4D
232
- /3FKVj0fxlXcC5W1CFgYd+5SxxBLqaWRYNj9eT79FCvaTcQhYRqLkngV1vMQv5rz
233
- q3+5o/7RFdwsRryBXXm7a2hMC1EFtNdPb1hzXJSuv0r5kjXGj6NbdBbbCD+ByOMp
234
- r70ylDm30JYkXZNbtcGO7Alhmq0IDfTbR7rsmD+fsJmI
235
- =I+GJ
236
- -----END PGP PRIVATE KEY BLOCK-----
237
- EOS
238
- end
239
- end