onesignal-ruby-rails6 0.3.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. checksums.yaml +7 -0
  2. data/.editorconfig +14 -0
  3. data/.github/workflows/gempush.yml +41 -0
  4. data/.github/workflows/ruby.yml +20 -0
  5. data/.gitignore +17 -0
  6. data/.rspec +3 -0
  7. data/.rubocop.yml +182 -0
  8. data/CODE_OF_CONDUCT.md +74 -0
  9. data/Gemfile +12 -0
  10. data/Gemfile.lock +85 -0
  11. data/LICENSE.txt +21 -0
  12. data/README.md +211 -0
  13. data/Rakefile +8 -0
  14. data/bin/console +15 -0
  15. data/bin/setup +8 -0
  16. data/fixtures/vcr_cassettes/os-csv-export.yml +135 -0
  17. data/fixtures/vcr_cassettes/os-fetch-noti.yml +76 -0
  18. data/fixtures/vcr_cassettes/os-fetch-player.yml +72 -0
  19. data/fixtures/vcr_cassettes/os-fetch-players.yml +72 -0
  20. data/fixtures/vcr_cassettes/os-send-noti.yml +145 -0
  21. data/lib/onesignal.rb +60 -0
  22. data/lib/onesignal/attachments.rb +27 -0
  23. data/lib/onesignal/auto_map.rb +13 -0
  24. data/lib/onesignal/autoloader.rb +7 -0
  25. data/lib/onesignal/client.rb +81 -0
  26. data/lib/onesignal/commands.rb +7 -0
  27. data/lib/onesignal/commands/autoloader.rb +7 -0
  28. data/lib/onesignal/commands/base_command.rb +23 -0
  29. data/lib/onesignal/commands/create_notification.rb +15 -0
  30. data/lib/onesignal/commands/csv_export.rb +15 -0
  31. data/lib/onesignal/commands/fetch_notification.rb +15 -0
  32. data/lib/onesignal/commands/fetch_player.rb +15 -0
  33. data/lib/onesignal/commands/fetch_players.rb +11 -0
  34. data/lib/onesignal/configuration.rb +19 -0
  35. data/lib/onesignal/filter.rb +140 -0
  36. data/lib/onesignal/included_targets.rb +47 -0
  37. data/lib/onesignal/notification.rb +37 -0
  38. data/lib/onesignal/notification/contents.rb +17 -0
  39. data/lib/onesignal/notification/headings.rb +17 -0
  40. data/lib/onesignal/responses.rb +7 -0
  41. data/lib/onesignal/responses/autoloader.rb +7 -0
  42. data/lib/onesignal/responses/base_response.rb +18 -0
  43. data/lib/onesignal/responses/csv_export.rb +18 -0
  44. data/lib/onesignal/responses/notification.rb +45 -0
  45. data/lib/onesignal/responses/player.rb +21 -0
  46. data/lib/onesignal/segment.rb +22 -0
  47. data/lib/onesignal/sounds.rb +39 -0
  48. data/lib/onesignal/version.rb +6 -0
  49. data/onesignal-ruby.gemspec +48 -0
  50. metadata +270 -0
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2018 Mikamai
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
@@ -0,0 +1,211 @@
1
+ # OneSignal Ruby Client
2
+ [![Gem Version](https://badge.fury.io/rb/onesignal-ruby.svg)](https://badge.fury.io/rb/onesignal-ruby)
3
+ [![GitHub Actions](https://github.com/mikamai/onesignal-ruby/workflows/Ruby/badge.svg)](https://github.com/mikamai/onesignal-ruby)
4
+
5
+ A simple, pure Ruby client to the [OneSignal](https://onesignal.com/apps/22bc6dec-5150-4d6d-8628-377259d2dd14/segments) API.
6
+
7
+ ## Installation
8
+
9
+ Add this line to your application's Gemfile:
10
+
11
+ ```ruby
12
+ gem 'onesignal-ruby'
13
+ ```
14
+
15
+ And then execute:
16
+
17
+ $ bundle
18
+
19
+ Or install it yourself as:
20
+
21
+ $ gem install onesignal-ruby
22
+
23
+ ## Configuration
24
+ OneSignal requires an App ID and an API Key, which can be found
25
+ on the OneSignal dashboard.
26
+ By default, OneSignal Ruby looks for them in the environment, loading
27
+ `ONESIGNAL_APP_ID` and `ONESIGNAL_API_KEY` variables.
28
+
29
+ It also defaults to `https://onesignal.com/api/v1` as the API URL.
30
+
31
+ You can also turn off OneSignal entirely with a boolean flag (for example to avoid sending
32
+ notification while in test or development environments)
33
+
34
+ It will also use an internal instance of the Ruby Logger at `INFO` level.
35
+
36
+ To customize those values, call the following snippet during your
37
+ initialization phase.
38
+
39
+ ```ruby
40
+ require 'onesignal'
41
+
42
+ OneSignal.configure do |config|
43
+ config.app_id = 'my_app_id'
44
+ config.api_key = 'my_api_key'
45
+ config.api_url = 'http://my_api_url'
46
+ config.active = false
47
+ config.logger = Logger.new # Any Logger compliant implementation
48
+ end
49
+ ```
50
+ ## Usage
51
+
52
+ ### Create a notification
53
+
54
+ Create a `Notification` object.
55
+ ```ruby
56
+ # Create headings for different languages. English is required.
57
+ headings = OneSignal::Notification::Headings.new(en: 'Hello!', it: 'Ciao!')
58
+
59
+ # Create contents for different languages. English is required.
60
+ contents = OneSignal::Notification::Contents.new(en: "I'm a notification!", it: 'Sono una notifica!')
61
+
62
+ # Select the included (and/or excluded) segments to target
63
+ included_segments = [OneSignal::Segment::ACTIVE_USERS, 'My custom segment']
64
+
65
+ # Create the Notification object
66
+ notification = OneSignal::Notification.new(headings: headings, contents: contents, included_segments: included_segments)
67
+ ```
68
+
69
+ Then send it.
70
+ ```ruby
71
+ response = OneSignal.send_notification(notification)
72
+ # => #<OneSignal::Responses::Notification> the created notification
73
+ ```
74
+
75
+ ### Fetch a notification
76
+ You can fetch an existing notification given its ID.
77
+ ```ruby
78
+ response = OneSignal.fetch_notification(notification_id)
79
+ # => #<OneSignal::Responses::Notification> the created notification
80
+ ```
81
+ `OneSignal::Responses::Notification` has the following fields.
82
+ ```ruby
83
+ id # Notification UUID
84
+ successful # Number of successful deliveries
85
+ failed # Number of failed deliveries
86
+ converted # Number of users who have clicked / tapped on your notification.
87
+ remaining # Number of notifications that have not been sent out yet
88
+ queued_at # Unix timestamp of enqueuing time
89
+ send_after # Unix timestamp indicating when notification delivery should begin
90
+ completed_at # Unix timestamp indicating when notification delivery completed.
91
+ url # URL associated with the notification
92
+ data # Custom metadata
93
+ canceled # Boolean, has the notification been canceled
94
+ headings # Map of locales to title strings
95
+ contents # Map of locales to content strings
96
+
97
+ response.id # => fe82c1ae-54c2-458b-8aad-7edc3e8a96c4
98
+ ```
99
+
100
+ ### Attachments
101
+ You can add files, data or images to a notification, or an external URL to open.
102
+ ```ruby
103
+ attachments = OneSignal::Attachments.new(
104
+ data: { 'test' => 'test' },
105
+ url: 'http://example.com',
106
+ ios_attachments: { 'something' => 'drawable resource name or URL.' },
107
+ android_picture: 'drawable resource name or URL.',
108
+ amazon_picture: 'drawable resource name or URL.',
109
+ chrome_picture: 'drawable resource name or URL.'
110
+ )
111
+
112
+ OneSignal::Notification.new(attachments: attachments)
113
+ ```
114
+
115
+ ### Fetch players
116
+ You can fetch all players and devices with a simple method.
117
+
118
+ ```ruby
119
+ players = OneSignal.fetch_players
120
+ # => Array of OneSignal::Responses::Player
121
+ ```
122
+
123
+ Or you can fetch a single player by its ID.
124
+ ```ruby
125
+ player = OneSignal.fetch_player(player_id)
126
+ # => #<OneSignal::Responses::Player>
127
+ ```
128
+
129
+ ### Filters
130
+
131
+ Filters can be created with a simple DSL. It closely matches the [JSON reference](https://documentation.onesignal.com/reference#section-send-to-users-based-on-filters), with a few touches of syntax
132
+ sugar.
133
+
134
+ **Example**
135
+ ```ruby
136
+ filters = [
137
+ OneSignal::Filter.last_session.lesser_than(2).hours_ago!,
138
+ OneSignal::Filter.session_count.equals(5),
139
+ OneSignal::Filter::OR,
140
+ OneSignal::Filter.country.equals('IT')
141
+ ]
142
+
143
+ OneSignal::Notification.new(filters: filters)
144
+ ```
145
+ Becomes
146
+ ```json
147
+ [
148
+ {"field":"last_session","relation":"<","hours_ago":"2"},
149
+ {"field":"session_count","relation":"=","value":"5"},
150
+ {"operator":"OR"},
151
+ {"field":"country","relation":"=","value":"IT"}
152
+ ]
153
+ ```
154
+
155
+ The operator methods (`#lesser_than`, `#greater_than`, `#equals`, `#not_equals`) are also available through the following shorthands: `<`, `>`, `=`, `!=`.
156
+
157
+ **Example**
158
+ ```ruby
159
+ filters = [
160
+ OneSignal::Filter.tag('userId') == 5,
161
+ OneSignal::Filter.session_count < 2,
162
+ OneSignal::Filter.language != 'en'
163
+ ]
164
+
165
+ OneSignal::Notification.new(filters: filters)
166
+ ```
167
+
168
+ ### Custom Sounds
169
+ You can customize notification sounds by passing a `OneSignal::Sounds` object.
170
+ ```ruby
171
+ sounds = OneSignal::Sounds.new(ios: 'ping.wav', android: 'ping')
172
+ OneSignal::Notification.new(sounds: sounds)
173
+ ```
174
+
175
+ ### Specific Targets
176
+ If you want to send a notification only to specific targets (a particular user's email or device) you can
177
+ pass a `OneSignal::IncludedTargets` to the notification object.
178
+ See [the official documentation](https://documentation.onesignal.com/reference#section-send-to-specific-devices) for a list of available params.
179
+ ```ruby
180
+ included_targets = OneSignal::IncludedTargets.new(include_player_ids: 'test-id-12345')
181
+ OneSignal::Notification.new(included_targets: included_targets)
182
+ ```
183
+
184
+ **WARNING**
185
+ Passing `include_player_ids` alongside other params is prohibited and will raise an `ArgumentError`.
186
+ Either use `include_player_ids` or use the other params.
187
+
188
+ ## Development
189
+
190
+ After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
191
+
192
+ To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
193
+
194
+ ## Contributing
195
+
196
+ Bug reports and pull requests are welcome on GitHub at https://github.com/mikamai/onesignal-ruby. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
197
+
198
+ This repo is managed following the [Git Flow](https://danielkummer.github.io/git-flow-cheatsheet/) principles.
199
+ - `master` is the stable, production-ready branch. Never work directly on it. The gem is published from this branch.
200
+ - `develop` is the active development branch. It is supposed to be somewhat stable. Every new feature is merged here once completed, before being released to master.
201
+ - `feature/my-awesome-branch` are personal, dedicated branches for working on actual features. They are merged in develop once completed and then deleted.
202
+ - `hotfix/my-awesome-fix` are special branches dedicated to bugfixes that compromise the library functionality. They are merged
203
+ in both master and develop and then deleted.
204
+
205
+ ## License
206
+
207
+ The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
208
+
209
+ ## Code of Conduct
210
+
211
+ Everyone interacting in the OneSignal Ruby project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](CODE_OF_CONDUCT.md).
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'bundler/gem_tasks'
4
+ require 'rspec/core/rake_task'
5
+
6
+ RSpec::Core::RakeTask.new(:spec)
7
+
8
+ task default: :spec
@@ -0,0 +1,15 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ require 'bundler/setup'
5
+ require 'onesignal'
6
+
7
+ # You can add fixtures and/or initialization code here to make experimenting
8
+ # with your gem easier. You can also use a different console, if you like.
9
+
10
+ # (If you use this, don't forget to add pry to your Gemfile!)
11
+ # require "pry"
12
+ # Pry.start
13
+
14
+ require 'irb'
15
+ IRB.start(__FILE__)
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+ IFS=$'\n\t'
4
+ set -vx
5
+
6
+ bundle install
7
+
8
+ # Do any other automated setup that you need to do here
@@ -0,0 +1,135 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://onesignal.com/api/v1/players/csv_export?app_id=test
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"app_id":"test"}'
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.15.4
12
+ Content-Type:
13
+ - application/json
14
+ Authorization:
15
+ - Basic ZjI3NDAwY2ItNTM1Yy00OTkwLWE1OTAtNzI0ZjdmNTg1ZTlj
16
+ Accept-Encoding:
17
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
+ Accept:
19
+ - "*/*"
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: OK
24
+ headers:
25
+ Date:
26
+ - Tue, 17 Sep 2019 14:33:01 GMT
27
+ Content-Type:
28
+ - application/json; charset=utf-8
29
+ Transfer-Encoding:
30
+ - chunked
31
+ Connection:
32
+ - keep-alive
33
+ Set-Cookie:
34
+ - __cfduid=d10f3912512be2fb143a35a8fb1af30331568730781; expires=Wed, 16-Sep-20
35
+ 14:33:01 GMT; path=/; domain=.onesignal.com; HttpOnly
36
+ Status:
37
+ - 200 OK
38
+ Cache-Control:
39
+ - max-age=0, private, must-revalidate
40
+ Access-Control-Allow-Origin:
41
+ - "*"
42
+ X-Xss-Protection:
43
+ - 1; mode=block
44
+ X-Request-Id:
45
+ - b5baa4c3-9884-4a26-ad57-9695fe9c85a4
46
+ Access-Control-Allow-Headers:
47
+ - SDK-Version
48
+ Etag:
49
+ - W/"7965e366a680d7fa0c3b52547dfd736a"
50
+ X-Frame-Options:
51
+ - SAMEORIGIN
52
+ X-Runtime:
53
+ - '0.169620'
54
+ X-Content-Type-Options:
55
+ - nosniff
56
+ X-Powered-By:
57
+ - Phusion Passenger 5.3.7
58
+ Expect-Ct:
59
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
60
+ Server:
61
+ - cloudflare
62
+ Cf-Ray:
63
+ - 517bcaf63e2ed45b-HAM
64
+ body:
65
+ encoding: ASCII-8BIT
66
+ string: '{"csv_file_url":"https://onesignal.s3.amazonaws.com/csv_exports/test/users_abc123.csv.gz"}'
67
+ http_version:
68
+ recorded_at: Tue, 17 Sep 2019 14:33:01 GMT
69
+ - request:
70
+ method: post
71
+ uri: https://onesignal.com/api/v1/players/csv_export?app_id=test
72
+ body:
73
+ encoding: UTF-8
74
+ string: '{"app_id":"test","last_active_since":"1568419200"}'
75
+ headers:
76
+ User-Agent:
77
+ - Faraday v0.15.4
78
+ Content-Type:
79
+ - application/json
80
+ Authorization:
81
+ - Basic ZjI3NDAwY2ItNTM1Yy00OTkwLWE1OTAtNzI0ZjdmNTg1ZTlj
82
+ Accept-Encoding:
83
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
84
+ Accept:
85
+ - "*/*"
86
+ response:
87
+ status:
88
+ code: 200
89
+ message: OK
90
+ headers:
91
+ Date:
92
+ - Tue, 17 Sep 2019 14:33:01 GMT
93
+ Content-Type:
94
+ - application/json; charset=utf-8
95
+ Transfer-Encoding:
96
+ - chunked
97
+ Connection:
98
+ - keep-alive
99
+ Set-Cookie:
100
+ - __cfduid=d10f3912512be2fb143a35a8fb1af30331568730781; expires=Wed, 16-Sep-20
101
+ 14:33:01 GMT; path=/; domain=.onesignal.com; HttpOnly
102
+ Status:
103
+ - 200 OK
104
+ Cache-Control:
105
+ - max-age=0, private, must-revalidate
106
+ Access-Control-Allow-Origin:
107
+ - "*"
108
+ X-Xss-Protection:
109
+ - 1; mode=block
110
+ X-Request-Id:
111
+ - b5baa4c3-9884-4a26-ad57-9695fe9c85a4
112
+ Access-Control-Allow-Headers:
113
+ - SDK-Version
114
+ Etag:
115
+ - W/"7965e366a680d7fa0c3b52547dfd736a"
116
+ X-Frame-Options:
117
+ - SAMEORIGIN
118
+ X-Runtime:
119
+ - '0.169620'
120
+ X-Content-Type-Options:
121
+ - nosniff
122
+ X-Powered-By:
123
+ - Phusion Passenger 5.3.7
124
+ Expect-Ct:
125
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
126
+ Server:
127
+ - cloudflare
128
+ Cf-Ray:
129
+ - 517bcaf63e2ed45b-HAM
130
+ body:
131
+ encoding: ASCII-8BIT
132
+ string: '{"csv_file_url":"https://onesignal.s3.amazonaws.com/csv_exports/test/users_def456.csv.gz"}'
133
+ http_version:
134
+ recorded_at: Tue, 17 Sep 2019 14:33:01 GMT
135
+ recorded_with: VCR 4.0.0
@@ -0,0 +1,76 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://onesignal.com/api/v1/notifications/?app_id
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.15.2
12
+ Content-Type:
13
+ - application/json
14
+ Authorization:
15
+ - Basic test
16
+ Accept-Encoding:
17
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
18
+ Accept:
19
+ - "*/*"
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: OK
24
+ headers:
25
+ Date:
26
+ - Thu, 28 Jun 2018 15:30:58 GMT
27
+ Content-Type:
28
+ - application/json; charset=utf-8
29
+ Transfer-Encoding:
30
+ - chunked
31
+ Connection:
32
+ - keep-alive
33
+ Set-Cookie:
34
+ - __cfduid=df0001a10af0412855ad6ed0276b466461530199857; expires=Fri, 28-Jun-19
35
+ 15:30:57 GMT; path=/; domain=.onesignal.com; HttpOnly
36
+ Status:
37
+ - 200 OK
38
+ Cache-Control:
39
+ - public, max-age=7200
40
+ Access-Control-Allow-Origin:
41
+ - "*"
42
+ X-Xss-Protection:
43
+ - 1; mode=block
44
+ X-Request-Id:
45
+ - 5fc751d2-1bc0-46c7-b33f-5579f956f7d2
46
+ Access-Control-Allow-Headers:
47
+ - SDK-Version
48
+ Etag:
49
+ - W/"ff3055c61c4d74053c0069ab107cbe35"
50
+ X-Frame-Options:
51
+ - SAMEORIGIN
52
+ X-Runtime:
53
+ - '0.257959'
54
+ X-Content-Type-Options:
55
+ - nosniff
56
+ X-Powered-By:
57
+ - Phusion Passenger 5.3.2
58
+ Cf-Cache-Status:
59
+ - EXPIRED
60
+ Vary:
61
+ - Accept-Encoding
62
+ Expires:
63
+ - Thu, 28 Jun 2018 17:30:58 GMT
64
+ Expect-Ct:
65
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
66
+ Server:
67
+ - cloudflare
68
+ Cf-Ray:
69
+ - 432132975a284334-MXP
70
+ body:
71
+ encoding: ASCII-8BIT
72
+ string: !binary |-
73
+ eyJ0b3RhbF9jb3VudCI6MjYsIm9mZnNldCI6MCwibGltaXQiOjUwLCJub3RpZmljYXRpb25zIjpbeyJhZG1fYmlnX3BpY3R1cmUiOm51bGwsImFkbV9ncm91cCI6bnVsbCwiYWRtX2dyb3VwX21lc3NhZ2UiOm51bGwsImFkbV9sYXJnZV9pY29uIjpudWxsLCJhZG1fc21hbGxfaWNvbiI6bnVsbCwiYWRtX3NvdW5kIjpudWxsLCJzcG9rZW5fdGV4dCI6bnVsbCwiYWxleGFfc3NtbCI6bnVsbCwiYWxleGFfZGlzcGxheV90aXRsZSI6bnVsbCwiYW1hem9uX2JhY2tncm91bmRfZGF0YSI6bnVsbCwiYW5kcm9pZF9hY2NlbnRfY29sb3IiOm51bGwsImFuZHJvaWRfZ3JvdXAiOm51bGwsImFuZHJvaWRfZ3JvdXBfbWVzc2FnZSI6bnVsbCwiYW5kcm9pZF9sZWRfY29sb3IiOm51bGwsImFuZHJvaWRfc291bmQiOm51bGwsImFuZHJvaWRfdmlzaWJpbGl0eSI6bnVsbCwiYXBwX2lkIjoiMjJiYzZkZWMtNTE1MC00ZDZkLTg2MjgtMzc3MjU5ZDJkZDE0IiwiYmlnX3BpY3R1cmUiOm51bGwsImJ1dHRvbnMiOm51bGwsImNhbmNlbGVkIjpmYWxzZSwiY2hyb21lX2JpZ19waWN0dXJlIjpudWxsLCJjaHJvbWVfaWNvbiI6bnVsbCwiY2hyb21lX3dlYl9pY29uIjpudWxsLCJjaHJvbWVfd2ViX2ltYWdlIjpudWxsLCJjaHJvbWVfd2ViX2JhZGdlIjpudWxsLCJjb250ZW50X2F2YWlsYWJsZSI6bnVsbCwiY29udGVudHMiOnsiZW4iOiJMaXZlIFRlc3QifSwiY29udmVydGVkIjowLCJkYXRhIjpudWxsLCJkZWxheWVkX29wdGlvbiI6bnVsbCwiZGVsaXZlcnlfdGltZV9vZl9kYXkiOm51bGwsImVycm9yZWQiOjAsImV4Y2x1ZGVkX3NlZ21lbnRzIjpbXSwiZmFpbGVkIjowLCJmaXJlZm94X2ljb24iOm51bGwsImhlYWRpbmdzIjp7ImVuIjoiVGhpcyBpcyBhIGxpdmUgdGVzdCBmb3IgT25lU2lnbmFsIn0sImlkIjoiMjllOWMyYWQtNDFkYS00NmYwLTk0YzMtZTcxZWU1YzEwM2RjIiwiaW5jbHVkZV9wbGF5ZXJfaWRzIjpudWxsLCJpbmNsdWRlZF9zZWdtZW50cyI6WyJBY3RpdmUgVXNlcnMiXSwiaW9zX2JhZGdlQ291bnQiOm51bGwsImlvc19iYWRnZVR5cGUiOm51bGwsImlvc19jYXRlZ29yeSI6bnVsbCwiaW9zX3NvdW5kIjpudWxsLCJhcG5zX2FsZXJ0IjpudWxsLCJpc0FkbSI6ZmFsc2UsImlzQW5kcm9pZCI6dHJ1ZSwiaXNDaHJvbWUiOmZhbHNlLCJpc0Nocm9tZVdlYiI6ZmFsc2UsImlzQWxleGEiOmZhbHNlLCJpc0ZpcmVmb3giOmZhbHNlLCJpc0lvcyI6dHJ1ZSwiaXNTYWZhcmkiOmZhbHNlLCJpc1dQIjpmYWxzZSwiaXNXUF9XTlMiOmZhbHNlLCJpc0VkZ2UiOmZhbHNlLCJsYXJnZV9pY29uIjpudWxsLCJwcmlvcml0eSI6bnVsbCwicXVldWVkX2F0IjoxNTMwMTk5ODU3LCJyZW1haW5pbmciOjEsInNlbmRfYWZ0ZXIiOjE1MzAxOTk4NTcsImNvbXBsZXRlZF9hdCI6bnVsbCwic21hbGxfaWNvbiI6bnVsbCwic3VjY2Vzc2Z1bCI6MCwidGFncyI6bnVsbCwiZmlsdGVycyI6bnVsbCwidGVtcGxhdGVfaWQiOm51bGwsInR0bCI6bnVsbCwidXJsIjpudWxsLCJ3ZWJfYnV0dG9ucyI6bnVsbCwid2ViX3B1c2hfdG9waWMiOm51bGwsIndwX3NvdW5kIjpudWxsLCJ3cF93bnNfc291bmQiOm51bGx9LHsiYWRtX2JpZ19waWN0dXJlIjpudWxsLCJhZG1fZ3JvdXAiOm51bGwsImFkbV9ncm91cF9tZXNzYWdlIjpudWxsLCJhZG1fbGFyZ2VfaWNvbiI6bnVsbCwiYWRtX3NtYWxsX2ljb24iOm51bGwsImFkbV9zb3VuZCI6bnVsbCwic3Bva2VuX3RleHQiOm51bGwsImFsZXhhX3NzbWwiOm51bGwsImFsZXhhX2Rpc3BsYXlfdGl0bGUiOm51bGwsImFtYXpvbl9iYWNrZ3JvdW5kX2RhdGEiOm51bGwsImFuZHJvaWRfYWNjZW50X2NvbG9yIjpudWxsLCJhbmRyb2lkX2dyb3VwIjpudWxsLCJhbmRyb2lkX2dyb3VwX21lc3NhZ2UiOm51bGwsImFuZHJvaWRfbGVkX2NvbG9yIjpudWxsLCJhbmRyb2lkX3NvdW5kIjpudWxsLCJhbmRyb2lkX3Zpc2liaWxpdHkiOm51bGwsImFwcF9pZCI6IjIyYmM2ZGVjLTUxNTAtNGQ2ZC04NjI4LTM3NzI1OWQyZGQxNCIsImJpZ19waWN0dXJlIjpudWxsLCJidXR0b25zIjpudWxsLCJjYW5jZWxlZCI6ZmFsc2UsImNocm9tZV9iaWdfcGljdHVyZSI6bnVsbCwiY2hyb21lX2ljb24iOm51bGwsImNocm9tZV93ZWJfaWNvbiI6bnVsbCwiY2hyb21lX3dlYl9pbWFnZSI6bnVsbCwiY2hyb21lX3dlYl9iYWRnZSI6bnVsbCwiY29udGVudF9hdmFpbGFibGUiOm51bGwsImNvbnRlbnRzIjp7ImVuIjoiTGl2ZSBUZXN0In0sImNvbnZlcnRlZCI6MCwiZGF0YSI6bnVsbCwiZGVsYXllZF9vcHRpb24iOm51bGwsImRlbGl2ZXJ5X3RpbWVfb2ZfZGF5IjpudWxsLCJlcnJvcmVkIjowLCJleGNsdWRlZF9zZWdtZW50cyI6W10sImZhaWxlZCI6MCwiZmlyZWZveF9pY29uIjpudWxsLCJoZWFkaW5ncyI6eyJlbiI6IlRoaXMgaXMgYSBsaXZlIHRlc3QgZm9yIE9uZVNpZ25hbCJ9LCJpZCI6IjNiM2ZhMzdiLTk2NDgtNDEwMS1iZjdiLTMwYzRkYzQ2NWMwMyIsImluY2x1ZGVfcGxheWVyX2lkcyI6bnVsbCwiaW5jbHVkZWRfc2VnbWVudHMiOlsiQWN0aXZlIFVzZXJzIl0sImlvc19iYWRnZUNvdW50IjpudWxsLCJpb3NfYmFkZ2VUeXBlIjpudWxsLCJpb3NfY2F0ZWdvcnkiOm51bGwsImlvc19zb3VuZCI6bnVsbCwiYXBuc19hbGVydCI6bnVsbCwiaXNBZG0iOmZhbHNlLCJpc0FuZHJvaWQiOnRydWUsImlzQ2hyb21lIjpmYWxzZSwiaXNDaHJvbWVXZWIiOmZhbHNlLCJpc0FsZXhhIjpmYWxzZSwiaXNGaXJlZm94IjpmYWxzZSwiaXNJb3MiOnRydWUsImlzU2FmYXJpIjpmYWxzZSwiaXNXUCI6ZmFsc2UsImlzV1BfV05TIjpmYWxzZSwiaXNFZGdlIjpmYWxzZSwibGFyZ2VfaWNvbiI6bnVsbCwicHJpb3JpdHkiOm51bGwsInF1ZXVlZF9hdCI6MTUzMDE5OTc4MywicmVtYWluaW5nIjowLCJzZW5kX2FmdGVyIjoxNTMwMTk5NzgzLCJjb21wbGV0ZWRfYXQiOjE1MzAxOTk3ODQsInNtYWxsX2ljb24iOm51bGwsInN1Y2Nlc3NmdWwiOjEsInRhZ3MiOm51bGwsImZpbHRlcnMiOm51bGwsInRlbXBsYXRlX2lkIjpudWxsLCJ0dGwiOm51bGwsInVybCI6bnVsbCwid2ViX2J1dHRvbnMiOm51bGwsIndlYl9wdXNoX3RvcGljIjpudWxsLCJ3cF9zb3VuZCI6bnVsbCwid3Bfd25zX3NvdW5kIjpudWxsfSx7ImFkbV9iaWdfcGljdHVyZSI6bnVsbCwiYWRtX2dyb3VwIjpudWxsLCJhZG1fZ3JvdXBfbWVzc2FnZSI6bnVsbCwiYWRtX2xhcmdlX2ljb24iOm51bGwsImFkbV9zbWFsbF9pY29uIjpudWxsLCJhZG1fc291bmQiOm51bGwsInNwb2tlbl90ZXh0IjpudWxsLCJhbGV4YV9zc21sIjpudWxsLCJhbGV4YV9kaXNwbGF5X3RpdGxlIjpudWxsLCJhbWF6b25fYmFja2dyb3VuZF9kYXRhIjpudWxsLCJhbmRyb2lkX2FjY2VudF9jb2xvciI6bnVsbCwiYW5kcm9pZF9ncm91cCI6bnVsbCwiYW5kcm9pZF9ncm91cF9tZXNzYWdlIjpudWxsLCJhbmRyb2lkX2xlZF9jb2xvciI6bnVsbCwiYW5kcm9pZF9zb3VuZCI6bnVsbCwiYW5kcm9pZF92aXNpYmlsaXR5IjpudWxsLCJhcHBfaWQiOiIyMmJjNmRlYy01MTUwLTRkNmQtODYyOC0zNzcyNTlkMmRkMTQiLCJiaWdfcGljdHVyZSI6bnVsbCwiYnV0dG9ucyI6bnVsbCwiY2FuY2VsZWQiOmZhbHNlLCJjaHJvbWVfYmlnX3BpY3R1cmUiOm51bGwsImNocm9tZV9pY29uIjpudWxsLCJjaHJvbWVfd2ViX2ljb24iOm51bGwsImNocm9tZV93ZWJfaW1hZ2UiOm51bGwsImNocm9tZV93ZWJfYmFkZ2UiOm51bGwsImNvbnRlbnRfYXZhaWxhYmxlIjpudWxsLCJjb250ZW50cyI6eyJlbiI6IkxpdmUgVGVzdCJ9LCJjb252ZXJ0ZWQiOjAsImRhdGEiOm51bGwsImRlbGF5ZWRfb3B0aW9uIjpudWxsLCJkZWxpdmVyeV90aW1lX29mX2RheSI6bnVsbCwiZXJyb3JlZCI6MCwiZXhjbHVkZWRfc2VnbWVudHMiOltdLCJmYWlsZWQiOjAsImZpcmVmb3hfaWNvbiI6bnVsbCwiaGVhZGluZ3MiOnsiZW4iOiJUaGlzIGlzIGEgbGl2ZSB0ZXN0IGZvciBPbmVTaWduYWwifSwiaWQiOiIyNmEyODI5MC1iYTNjLTRmMTYtOTA0MS1jZTcyMjdmM2FkZGIiLCJpbmNsdWRlX3BsYXllcl9pZHMiOm51bGwsImluY2x1ZGVkX3NlZ21lbnRzIjpbIkFjdGl2ZSBVc2VycyJdLCJpb3NfYmFkZ2VDb3VudCI6bnVsbCwiaW9zX2JhZGdlVHlwZSI6bnVsbCwiaW9zX2NhdGVnb3J5IjpudWxsLCJpb3Nfc291bmQiOm51bGwsImFwbnNfYWxlcnQiOm51bGwsImlzQWRtIjpmYWxzZSwiaXNBbmRyb2lkIjp0cnVlLCJpc0Nocm9tZSI6ZmFsc2UsImlzQ2hyb21lV2ViIjpmYWxzZSwiaXNBbGV4YSI6ZmFsc2UsImlzRmlyZWZveCI6ZmFsc2UsImlzSW9zIjp0cnVlLCJpc1NhZmFyaSI6ZmFsc2UsImlzV1AiOmZhbHNlLCJpc1dQX1dOUyI6ZmFsc2UsImlzRWRnZSI6ZmFsc2UsImxhcmdlX2ljb24iOm51bGwsInByaW9yaXR5IjpudWxsLCJxdWV1ZWRfYXQiOjE1MzAxOTk3MTYsInJlbWFpbmluZyI6MCwic2VuZF9hZnRlciI6MTUzMDE5OTcxNiwiY29tcGxldGVkX2F0IjoxNTMwMTk5NzE2LCJzbWFsbF9pY29uIjpudWxsLCJzdWNjZXNzZnVsIjoxLCJ0YWdzIjpudWxsLCJmaWx0ZXJzIjpudWxsLCJ0ZW1wbGF0ZV9pZCI6bnVsbCwidHRsIjpudWxsLCJ1cmwiOm51bGwsIndlYl9idXR0b25zIjpudWxsLCJ3ZWJfcHVzaF90b3BpYyI6bnVsbCwid3Bfc291bmQiOm51bGwsIndwX3duc19zb3VuZCI6bnVsbH0seyJhZG1fYmlnX3BpY3R1cmUiOm51bGwsImFkbV9ncm91cCI6bnVsbCwiYWRtX2dyb3VwX21lc3NhZ2UiOm51bGwsImFkbV9sYXJnZV9pY29uIjpudWxsLCJhZG1fc21hbGxfaWNvbiI6bnVsbCwiYWRtX3NvdW5kIjpudWxsLCJzcG9rZW5fdGV4dCI6bnVsbCwiYWxleGFfc3NtbCI6bnVsbCwiYWxleGFfZGlzcGxheV90aXRsZSI6bnVsbCwiYW1hem9uX2JhY2tncm91bmRfZGF0YSI6bnVsbCwiYW5kcm9pZF9hY2NlbnRfY29sb3IiOm51bGwsImFuZHJvaWRfZ3JvdXAiOm51bGwsImFuZHJvaWRfZ3JvdXBfbWVzc2FnZSI6bnVsbCwiYW5kcm9pZF9sZWRfY29sb3IiOm51bGwsImFuZHJvaWRfc291bmQiOm51bGwsImFuZHJvaWRfdmlzaWJpbGl0eSI6bnVsbCwiYXBwX2lkIjoiMjJiYzZkZWMtNTE1MC00ZDZkLTg2MjgtMzc3MjU5ZDJkZDE0IiwiYmlnX3BpY3R1cmUiOm51bGwsImJ1dHRvbnMiOm51bGwsImNhbmNlbGVkIjpmYWxzZSwiY2hyb21lX2JpZ19waWN0dXJlIjpudWxsLCJjaHJvbWVfaWNvbiI6bnVsbCwiY2hyb21lX3dlYl9pY29uIjpudWxsLCJjaHJvbWVfd2ViX2ltYWdlIjpudWxsLCJjaHJvbWVfd2ViX2JhZGdlIjpudWxsLCJjb250ZW50X2F2YWlsYWJsZSI6bnVsbCwiY29udGVudHMiOnsiZW4iOiJMaXZlIFRlc3QifSwiY29udmVydGVkIjowLCJkYXRhIjpudWxsLCJkZWxheWVkX29wdGlvbiI6bnVsbCwiZGVsaXZlcnlfdGltZV9vZl9kYXkiOm51bGwsImVycm9yZWQiOjAsImV4Y2x1ZGVkX3NlZ21lbnRzIjpbXSwiZmFpbGVkIjowLCJmaXJlZm94X2ljb24iOm51bGwsImhlYWRpbmdzIjp7ImVuIjoiVGhpcyBpcyBhIGxpdmUgdGVzdCBmb3IgT25lU2lnbmFsIn0sImlkIjoiYjA0MjAwYjEtYTA4Yy00ZGJjLWJkNTEtN2U3Mzc1N2UxNzI2IiwiaW5jbHVkZV9wbGF5ZXJfaWRzIjpudWxsLCJpbmNsdWRlZF9zZWdtZW50cyI6WyJBY3RpdmUgVXNlcnMiXSwiaW9zX2JhZGdlQ291bnQiOm51bGwsImlvc19iYWRnZVR5cGUiOm51bGwsImlvc19jYXRlZ29yeSI6bnVsbCwiaW9zX3NvdW5kIjpudWxsLCJhcG5zX2FsZXJ0IjpudWxsLCJpc0FkbSI6ZmFsc2UsImlzQW5kcm9pZCI6dHJ1ZSwiaXNDaHJvbWUiOmZhbHNlLCJpc0Nocm9tZVdlYiI6ZmFsc2UsImlzQWxleGEiOmZhbHNlLCJpc0ZpcmVmb3giOmZhbHNlLCJpc0lvcyI6dHJ1ZSwiaXNTYWZhcmkiOmZhbHNlLCJpc1dQIjpmYWxzZSwiaXNXUF9XTlMiOmZhbHNlLCJpc0VkZ2UiOmZhbHNlLCJsYXJnZV9pY29uIjpudWxsLCJwcmlvcml0eSI6bnVsbCwicXVldWVkX2F0IjoxNTMwMTk5MDQ2LCJyZW1haW5pbmciOjAsInNlbmRfYWZ0ZXIiOjE1MzAxOTkwNDYsImNvbXBsZXRlZF9hdCI6MTUzMDE5OTA0Nywic21hbGxfaWNvbiI6bnVsbCwic3VjY2Vzc2Z1bCI6MSwidGFncyI6bnVsbCwiZmlsdGVycyI6bnVsbCwidGVtcGxhdGVfaWQiOm51bGwsInR0bCI6bnVsbCwidXJsIjpudWxsLCJ3ZWJfYnV0dG9ucyI6bnVsbCwid2ViX3B1c2hfdG9waWMiOm51bGwsIndwX3NvdW5kIjpudWxsLCJ3cF93bnNfc291bmQiOm51bGx9LHsiYWRtX2JpZ19waWN0dXJlIjpudWxsLCJhZG1fZ3JvdXAiOm51bGwsImFkbV9ncm91cF9tZXNzYWdlIjpudWxsLCJhZG1fbGFyZ2VfaWNvbiI6bnVsbCwiYWRtX3NtYWxsX2ljb24iOm51bGwsImFkbV9zb3VuZCI6bnVsbCwic3Bva2VuX3RleHQiOm51bGwsImFsZXhhX3NzbWwiOm51bGwsImFsZXhhX2Rpc3BsYXlfdGl0bGUiOm51bGwsImFtYXpvbl9iYWNrZ3JvdW5kX2RhdGEiOm51bGwsImFuZHJvaWRfYWNjZW50X2NvbG9yIjpudWxsLCJhbmRyb2lkX2dyb3VwIjpudWxsLCJhbmRyb2lkX2dyb3VwX21lc3NhZ2UiOm51bGwsImFuZHJvaWRfbGVkX2NvbG9yIjpudWxsLCJhbmRyb2lkX3NvdW5kIjpudWxsLCJhbmRyb2lkX3Zpc2liaWxpdHkiOm51bGwsImFwcF9pZCI6IjIyYmM2ZGVjLTUxNTAtNGQ2ZC04NjI4LTM3NzI1OWQyZGQxNCIsImJpZ19waWN0dXJlIjpudWxsLCJidXR0b25zIjpudWxsLCJjYW5jZWxlZCI6ZmFsc2UsImNocm9tZV9iaWdfcGljdHVyZSI6bnVsbCwiY2hyb21lX2ljb24iOm51bGwsImNocm9tZV93ZWJfaWNvbiI6bnVsbCwiY2hyb21lX3dlYl9pbWFnZSI6bnVsbCwiY2hyb21lX3dlYl9iYWRnZSI6bnVsbCwiY29udGVudF9hdmFpbGFibGUiOm51bGwsImNvbnRlbnRzIjp7ImVuIjoiTGl2ZSBUZXN0In0sImNvbnZlcnRlZCI6MCwiZGF0YSI6bnVsbCwiZGVsYXllZF9vcHRpb24iOm51bGwsImRlbGl2ZXJ5X3RpbWVfb2ZfZGF5IjpudWxsLCJlcnJvcmVkIjowLCJleGNsdWRlZF9zZWdtZW50cyI6W10sImZhaWxlZCI6MCwiZmlyZWZveF9pY29uIjpudWxsLCJoZWFkaW5ncyI6eyJlbiI6IlRoaXMgaXMgYSBsaXZlIHRlc3QgZm9yIE9uZVNpZ25hbCJ9LCJpZCI6IjQ3N2MwNTQ5LWNhNzUtNDc0MC04ODIyLThkZmI4ZjUzYTlhMyIsImluY2x1ZGVfcGxheWVyX2lkcyI6bnVsbCwiaW5jbHVkZWRfc2VnbWVudHMiOlsiQWN0aXZlIFVzZXJzIl0sImlvc19iYWRnZUNvdW50IjpudWxsLCJpb3NfYmFkZ2VUeXBlIjpudWxsLCJpb3NfY2F0ZWdvcnkiOm51bGwsImlvc19zb3VuZCI6bnVsbCwiYXBuc19hbGVydCI6bnVsbCwiaXNBZG0iOmZhbHNlLCJpc0FuZHJvaWQiOnRydWUsImlzQ2hyb21lIjpmYWxzZSwiaXNDaHJvbWVXZWIiOmZhbHNlLCJpc0FsZXhhIjpmYWxzZSwiaXNGaXJlZm94IjpmYWxzZSwiaXNJb3MiOnRydWUsImlzU2FmYXJpIjpmYWxzZSwiaXNXUCI6ZmFsc2UsImlzV1BfV05TIjpmYWxzZSwiaXNFZGdlIjpmYWxzZSwibGFyZ2VfaWNvbiI6bnVsbCwicHJpb3JpdHkiOm51bGwsInF1ZXVlZF9hdCI6MTUzMDE5ODk5OSwicmVtYWluaW5nIjowLCJzZW5kX2FmdGVyIjoxNTMwMTk4OTk5LCJjb21wbGV0ZWRfYXQiOjE1MzAxOTkwMDAsInNtYWxsX2ljb24iOm51bGwsInN1Y2Nlc3NmdWwiOjEsInRhZ3MiOm51bGwsImZpbHRlcnMiOm51bGwsInRlbXBsYXRlX2lkIjpudWxsLCJ0dGwiOm51bGwsInVybCI6bnVsbCwid2ViX2J1dHRvbnMiOm51bGwsIndlYl9wdXNoX3RvcGljIjpudWxsLCJ3cF9zb3VuZCI6bnVsbCwid3Bfd25zX3NvdW5kIjpudWxsfSx7ImFkbV9iaWdfcGljdHVyZSI6IiIsImFkbV9ncm91cCI6IiIsImFkbV9ncm91cF9tZXNzYWdlIjp7ImVuIjoiIn0sImFkbV9sYXJnZV9pY29uIjoiIiwiYWRtX3NtYWxsX2ljb24iOiIiLCJhZG1fc291bmQiOiIiLCJzcG9rZW5fdGV4dCI6e30sImFsZXhhX3NzbWwiOm51bGwsImFsZXhhX2Rpc3BsYXlfdGl0bGUiOm51bGwsImFtYXpvbl9iYWNrZ3JvdW5kX2RhdGEiOmZhbHNlLCJhbmRyb2lkX2FjY2VudF9jb2xvciI6IiIsImFuZHJvaWRfZ3JvdXAiOiIiLCJhbmRyb2lkX2dyb3VwX21lc3NhZ2UiOnsiZW4iOiIifSwiYW5kcm9pZF9sZWRfY29sb3IiOiIiLCJhbmRyb2lkX3NvdW5kIjoiIiwiYW5kcm9pZF92aXNpYmlsaXR5IjoxLCJhcHBfaWQiOiIyMmJjNmRlYy01MTUwLTRkNmQtODYyOC0zNzcyNTlkMmRkMTQiLCJiaWdfcGljdHVyZSI6IiIsImJ1dHRvbnMiOm51bGwsImNhbmNlbGVkIjpmYWxzZSwiY2hyb21lX2JpZ19waWN0dXJlIjoiIiwiY2hyb21lX2ljb24iOiIiLCJjaHJvbWVfd2ViX2ljb24iOiIiLCJjaHJvbWVfd2ViX2ltYWdlIjoiIiwiY2hyb21lX3dlYl9iYWRnZSI6IiIsImNvbnRlbnRfYXZhaWxhYmxlIjpmYWxzZSwiY29udGVudHMiOnsiZW4iOiJnZmRnZmRnZCJ9LCJjb252ZXJ0ZWQiOjAsImRhdGEiOm51bGwsImRlbGF5ZWRfb3B0aW9uIjoiaW1tZWRpYXRlIiwiZGVsaXZlcnlfdGltZV9vZl9kYXkiOiIzOjMyUE0iLCJlcnJvcmVkIjowLCJleGNsdWRlZF9zZWdtZW50cyI6W10sImZhaWxlZCI6MCwiZmlyZWZveF9pY29uIjoiIiwiaGVhZGluZ3MiOnsiZW4iOiJkc2Fkc2FkcyJ9LCJpZCI6ImE0MmIzNjA0LTkwOTYtNDE0YS1hMzliLTBiMjNjMjcyZGRhNCIsImluY2x1ZGVfcGxheWVyX2lkcyI6bnVsbCwiaW5jbHVkZWRfc2VnbWVudHMiOlsiQWxsIl0sImlvc19iYWRnZUNvdW50IjoxLCJpb3NfYmFkZ2VUeXBlIjoiTm9uZSIsImlvc19jYXRlZ29yeSI6IiIsImlvc19zb3VuZCI6IiIsImFwbnNfYWxlcnQiOnt9LCJpc0FkbSI6ZmFsc2UsImlzQW5kcm9pZCI6dHJ1ZSwiaXNDaHJvbWUiOmZhbHNlLCJpc0Nocm9tZVdlYiI6ZmFsc2UsImlzQWxleGEiOmZhbHNlLCJpc0ZpcmVmb3giOmZhbHNlLCJpc0lvcyI6dHJ1ZSwiaXNTYWZhcmkiOmZhbHNlLCJpc1dQIjpmYWxzZSwiaXNXUF9XTlMiOmZhbHNlLCJpc0VkZ2UiOmZhbHNlLCJsYXJnZV9pY29uIjoiIiwicHJpb3JpdHkiOjUsInF1ZXVlZF9hdCI6MTUzMDE5Mjc2OCwicmVtYWluaW5nIjowLCJzZW5kX2FmdGVyIjoxNTMwMTkyNzY4LCJjb21wbGV0ZWRfYXQiOjE1MzAxOTI3NjksInNtYWxsX2ljb24iOiIiLCJzdWNjZXNzZnVsIjoxLCJ0YWdzIjpudWxsLCJmaWx0ZXJzIjpudWxsLCJ0ZW1wbGF0ZV9pZCI6bnVsbCwidHRsIjpudWxsLCJ1cmwiOiIiLCJ3ZWJfYnV0dG9ucyI6bnVsbCwid2ViX3B1c2hfdG9waWMiOm51bGwsIndwX3NvdW5kIjoiIiwid3Bfd25zX3NvdW5kIjoiIn0seyJhZG1fYmlnX3BpY3R1cmUiOiIiLCJhZG1fZ3JvdXAiOiIiLCJhZG1fZ3JvdXBfbWVzc2FnZSI6eyJlbiI6IiJ9LCJhZG1fbGFyZ2VfaWNvbiI6IiIsImFkbV9zbWFsbF9pY29uIjoiIiwiYWRtX3NvdW5kIjoiIiwic3Bva2VuX3RleHQiOnt9LCJhbGV4YV9zc21sIjpudWxsLCJhbGV4YV9kaXNwbGF5X3RpdGxlIjpudWxsLCJhbWF6b25fYmFja2dyb3VuZF9kYXRhIjpmYWxzZSwiYW5kcm9pZF9hY2NlbnRfY29sb3IiOiIiLCJhbmRyb2lkX2dyb3VwIjoiIiwiYW5kcm9pZF9ncm91cF9tZXNzYWdlIjp7ImVuIjoiIn0sImFuZHJvaWRfbGVkX2NvbG9yIjoiIiwiYW5kcm9pZF9zb3VuZCI6IiIsImFuZHJvaWRfdmlzaWJpbGl0eSI6MSwiYXBwX2lkIjoiMjJiYzZkZWMtNTE1MC00ZDZkLTg2MjgtMzc3MjU5ZDJkZDE0IiwiYmlnX3BpY3R1cmUiOiIiLCJidXR0b25zIjoiW3tcImlkXCI6XCJvbmVcIixcInRleHRcIjpcIk9uZVwiLFwiaWNvblwiOlwiaWNfbWVudV9zaGFyZVwifV0iLCJjYW5jZWxlZCI6ZmFsc2UsImNocm9tZV9iaWdfcGljdHVyZSI6IiIsImNocm9tZV9pY29uIjoiIiwiY2hyb21lX3dlYl9pY29uIjoiIiwiY2hyb21lX3dlYl9pbWFnZSI6IiIsImNocm9tZV93ZWJfYmFkZ2UiOiIiLCJjb250ZW50X2F2YWlsYWJsZSI6ZmFsc2UsImNvbnRlbnRzIjp7ImVuIjoiZHNkc2QifSwiY29udmVydGVkIjoxLCJkYXRhIjpudWxsLCJkZWxheWVkX29wdGlvbiI6ImltbWVkaWF0ZSIsImRlbGl2ZXJ5X3RpbWVfb2ZfZGF5IjoiMTowMVBNIiwiZXJyb3JlZCI6MCwiZXhjbHVkZWRfc2VnbWVudHMiOltdLCJmYWlsZWQiOjAsImZpcmVmb3hfaWNvbiI6IiIsImhlYWRpbmdzIjp7ImVuIjoiVGVzdCBQdWxzYW50aSJ9LCJpZCI6Ijk1NzQ1MWUwLWJhZjMtNDhlOC1iYjZhLTM3NzUyMjBiZWM5NSIsImluY2x1ZGVfcGxheWVyX2lkcyI6bnVsbCwiaW5jbHVkZWRfc2VnbWVudHMiOlsiQWxsIl0sImlvc19iYWRnZUNvdW50IjoxLCJpb3NfYmFkZ2VUeXBlIjoiSW5jcmVhc2UiLCJpb3NfY2F0ZWdvcnkiOiIiLCJpb3Nfc291bmQiOiIiLCJhcG5zX2FsZXJ0Ijp7fSwiaXNBZG0iOmZhbHNlLCJpc0FuZHJvaWQiOmZhbHNlLCJpc0Nocm9tZSI6ZmFsc2UsImlzQ2hyb21lV2ViIjpmYWxzZSwiaXNBbGV4YSI6ZmFsc2UsImlzRmlyZWZveCI6ZmFsc2UsImlzSW9zIjp0cnVlLCJpc1NhZmFyaSI6ZmFsc2UsImlzV1AiOmZhbHNlLCJpc1dQX1dOUyI6ZmFsc2UsImlzRWRnZSI6ZmFsc2UsImxhcmdlX2ljb24iOiIiLCJwcmlvcml0eSI6NSwicXVldWVkX2F0IjoxNTMwMTgzODMzLCJyZW1haW5pbmciOjAsInNlbmRfYWZ0ZXIiOjE1MzAxODM4MzMsImNvbXBsZXRlZF9hdCI6MTUzMDE4MzgzNCwic21hbGxfaWNvbiI6IiIsInN1Y2Nlc3NmdWwiOjEsInRhZ3MiOm51bGwsImZpbHRlcnMiOm51bGwsInRlbXBsYXRlX2lkIjpudWxsLCJ0dGwiOm51bGwsInVybCI6IiIsIndlYl9idXR0b25zIjpudWxsLCJ3ZWJfcHVzaF90b3BpYyI6bnVsbCwid3Bfc291bmQiOiIiLCJ3cF93bnNfc291bmQiOiIifSx7ImFkbV9iaWdfcGljdHVyZSI6IiIsImFkbV9ncm91cCI6IiIsImFkbV9ncm91cF9tZXNzYWdlIjp7ImVuIjoiIn0sImFkbV9sYXJnZV9pY29uIjoiIiwiYWRtX3NtYWxsX2ljb24iOiIiLCJhZG1fc291bmQiOiIiLCJzcG9rZW5fdGV4dCI6e30sImFsZXhhX3NzbWwiOm51bGwsImFsZXhhX2Rpc3BsYXlfdGl0bGUiOm51bGwsImFtYXpvbl9iYWNrZ3JvdW5kX2RhdGEiOmZhbHNlLCJhbmRyb2lkX2FjY2VudF9jb2xvciI6IiIsImFuZHJvaWRfZ3JvdXAiOiIiLCJhbmRyb2lkX2dyb3VwX21lc3NhZ2UiOnsiZW4iOiIifSwiYW5kcm9pZF9sZWRfY29sb3IiOiIiLCJhbmRyb2lkX3NvdW5kIjoiIiwiYW5kcm9pZF92aXNpYmlsaXR5IjoxLCJhcHBfaWQiOiIyMmJjNmRlYy01MTUwLTRkNmQtODYyOC0zNzcyNTlkMmRkMTQiLCJiaWdfcGljdHVyZSI6IiIsImJ1dHRvbnMiOm51bGwsImNhbmNlbGVkIjpmYWxzZSwiY2hyb21lX2JpZ19waWN0dXJlIjoiIiwiY2hyb21lX2ljb24iOiIiLCJjaHJvbWVfd2ViX2ljb24iOiIiLCJjaHJvbWVfd2ViX2ltYWdlIjoiIiwiY2hyb21lX3dlYl9iYWRnZSI6IiIsImNvbnRlbnRfYXZhaWxhYmxlIjpmYWxzZSwiY29udGVudHMiOnsiZW4iOiJkc2ZkYXNmZGFzIn0sImNvbnZlcnRlZCI6MCwiZGF0YSI6bnVsbCwiZGVsYXllZF9vcHRpb24iOiJpbW1lZGlhdGUiLCJkZWxpdmVyeV90aW1lX29mX2RheSI6IjEyOjUyUE0iLCJlcnJvcmVkIjowLCJleGNsdWRlZF9zZWdtZW50cyI6W10sImZhaWxlZCI6MCwiZmlyZWZveF9pY29uIjoiIiwiaGVhZGluZ3MiOnsiZW4iOiJmZHNmZGFzZiJ9LCJpZCI6ImYyNDZmNmFlLTUwZmQtNGUwNi1hOWRkLTQ1MDgwZDRlMzI5MCIsImluY2x1ZGVfcGxheWVyX2lkcyI6bnVsbCwiaW5jbHVkZWRfc2VnbWVudHMiOlsiQWxsIl0sImlvc19iYWRnZUNvdW50IjoxLCJpb3NfYmFkZ2VUeXBlIjoiSW5jcmVhc2UiLCJpb3NfY2F0ZWdvcnkiOiIiLCJpb3Nfc291bmQiOiJyZXdhcmQud2F2IiwiYXBuc19hbGVydCI6e30sImlzQWRtIjpmYWxzZSwiaXNBbmRyb2lkIjpmYWxzZSwiaXNDaHJvbWUiOmZhbHNlLCJpc0Nocm9tZVdlYiI6ZmFsc2UsImlzQWxleGEiOmZhbHNlLCJpc0ZpcmVmb3giOmZhbHNlLCJpc0lvcyI6dHJ1ZSwiaXNTYWZhcmkiOmZhbHNlLCJpc1dQIjpmYWxzZSwiaXNXUF9XTlMiOmZhbHNlLCJpc0VkZ2UiOmZhbHNlLCJsYXJnZV9pY29uIjoiIiwicHJpb3JpdHkiOjUsInF1ZXVlZF9hdCI6MTUzMDE4MzE0NSwicmVtYWluaW5nIjowLCJzZW5kX2FmdGVyIjoxNTMwMTgzMTQ1LCJjb21wbGV0ZWRfYXQiOjE1MzAxODMxNDUsInNtYWxsX2ljb24iOiIiLCJzdWNjZXNzZnVsIjoxLCJ0YWdzIjpudWxsLCJmaWx0ZXJzIjpudWxsLCJ0ZW1wbGF0ZV9pZCI6bnVsbCwidHRsIjpudWxsLCJ1cmwiOiIiLCJ3ZWJfYnV0dG9ucyI6bnVsbCwid2ViX3B1c2hfdG9waWMiOm51bGwsIndwX3NvdW5kIjoiIiwid3Bfd25zX3NvdW5kIjoiIn0seyJhZG1fYmlnX3BpY3R1cmUiOiIiLCJhZG1fZ3JvdXAiOiIiLCJhZG1fZ3JvdXBfbWVzc2FnZSI6eyJlbiI6IiJ9LCJhZG1fbGFyZ2VfaWNvbiI6IiIsImFkbV9zbWFsbF9pY29uIjoiIiwiYWRtX3NvdW5kIjoiIiwic3Bva2VuX3RleHQiOnt9LCJhbGV4YV9zc21sIjpudWxsLCJhbGV4YV9kaXNwbGF5X3RpdGxlIjpudWxsLCJhbWF6b25fYmFja2dyb3VuZF9kYXRhIjpmYWxzZSwiYW5kcm9pZF9hY2NlbnRfY29sb3IiOiIiLCJhbmRyb2lkX2dyb3VwIjoiIiwiYW5kcm9pZF9ncm91cF9tZXNzYWdlIjp7ImVuIjoiIn0sImFuZHJvaWRfbGVkX2NvbG9yIjoiIiwiYW5kcm9pZF9zb3VuZCI6IiIsImFuZHJvaWRfdmlzaWJpbGl0eSI6MSwiYXBwX2lkIjoiMjJiYzZkZWMtNTE1MC00ZDZkLTg2MjgtMzc3MjU5ZDJkZDE0IiwiYmlnX3BpY3R1cmUiOiIiLCJidXR0b25zIjpudWxsLCJjYW5jZWxlZCI6ZmFsc2UsImNocm9tZV9iaWdfcGljdHVyZSI6IiIsImNocm9tZV9pY29uIjoiIiwiY2hyb21lX3dlYl9pY29uIjoiIiwiY2hyb21lX3dlYl9pbWFnZSI6IiIsImNocm9tZV93ZWJfYmFkZ2UiOiIiLCJjb250ZW50X2F2YWlsYWJsZSI6ZmFsc2UsImNvbnRlbnRzIjp7ImVuIjoidGVzdCB0ZXN0IDEifSwiY29udmVydGVkIjowLCJkYXRhIjpudWxsLCJkZWxheWVkX29wdGlvbiI6ImltbWVkaWF0ZSIsImRlbGl2ZXJ5X3RpbWVfb2ZfZGF5IjoiMTI6NTFQTSIsImVycm9yZWQiOjAsImV4Y2x1ZGVkX3NlZ21lbnRzIjpbXSwiZmFpbGVkIjowLCJmaXJlZm94X2ljb24iOiIiLCJoZWFkaW5ncyI6eyJlbiI6InRlc3QgdGVzdCJ9LCJpZCI6IjllODI3NTAxLTNmNmQtNGYyNy05ZDUwLThlY2Y1YjZlNDNlMSIsImluY2x1ZGVfcGxheWVyX2lkcyI6bnVsbCwiaW5jbHVkZWRfc2VnbWVudHMiOlsiQWxsIl0sImlvc19iYWRnZUNvdW50IjoxLCJpb3NfYmFkZ2VUeXBlIjoiSW5jcmVhc2UiLCJpb3NfY2F0ZWdvcnkiOiIiLCJpb3Nfc291bmQiOiJyZXdhcmQud2F2IiwiYXBuc19hbGVydCI6e30sImlzQWRtIjpmYWxzZSwiaXNBbmRyb2lkIjpmYWxzZSwiaXNDaHJvbWUiOmZhbHNlLCJpc0Nocm9tZVdlYiI6ZmFsc2UsImlzQWxleGEiOmZhbHNlLCJpc0ZpcmVmb3giOmZhbHNlLCJpc0lvcyI6dHJ1ZSwiaXNTYWZhcmkiOmZhbHNlLCJpc1dQIjpmYWxzZSwiaXNXUF9XTlMiOmZhbHNlLCJpc0VkZ2UiOmZhbHNlLCJsYXJnZV9pY29uIjoiIiwicHJpb3JpdHkiOjUsInF1ZXVlZF9hdCI6MTUzMDE4MzEwNywicmVtYWluaW5nIjowLCJzZW5kX2FmdGVyIjoxNTMwMTgzMTA3LCJjb21wbGV0ZWRfYXQiOjE1MzAxODMxMDgsInNtYWxsX2ljb24iOiIiLCJzdWNjZXNzZnVsIjoxLCJ0YWdzIjpudWxsLCJmaWx0ZXJzIjpudWxsLCJ0ZW1wbGF0ZV9pZCI6bnVsbCwidHRsIjpudWxsLCJ1cmwiOiIiLCJ3ZWJfYnV0dG9ucyI6bnVsbCwid2ViX3B1c2hfdG9waWMiOm51bGwsIndwX3NvdW5kIjoiIiwid3Bfd25zX3NvdW5kIjoiIn0seyJhZG1fYmlnX3BpY3R1cmUiOiIiLCJhZG1fZ3JvdXAiOiIiLCJhZG1fZ3JvdXBfbWVzc2FnZSI6eyJlbiI6IiJ9LCJhZG1fbGFyZ2VfaWNvbiI6IiIsImFkbV9zbWFsbF9pY29uIjoiIiwiYWRtX3NvdW5kIjoiIiwic3Bva2VuX3RleHQiOnt9LCJhbGV4YV9zc21sIjpudWxsLCJhbGV4YV9kaXNwbGF5X3RpdGxlIjpudWxsLCJhbWF6b25fYmFja2dyb3VuZF9kYXRhIjpmYWxzZSwiYW5kcm9pZF9hY2NlbnRfY29sb3IiOiIiLCJhbmRyb2lkX2dyb3VwIjoiIiwiYW5kcm9pZF9ncm91cF9tZXNzYWdlIjp7ImVuIjoiIn0sImFuZHJvaWRfbGVkX2NvbG9yIjoiIiwiYW5kcm9pZF9zb3VuZCI6IiIsImFuZHJvaWRfdmlzaWJpbGl0eSI6MSwiYXBwX2lkIjoiMjJiYzZkZWMtNTE1MC00ZDZkLTg2MjgtMzc3MjU5ZDJkZDE0IiwiYmlnX3BpY3R1cmUiOiIiLCJidXR0b25zIjpudWxsLCJjYW5jZWxlZCI6ZmFsc2UsImNocm9tZV9iaWdfcGljdHVyZSI6IiIsImNocm9tZV9pY29uIjoiIiwiY2hyb21lX3dlYl9pY29uIjoiIiwiY2hyb21lX3dlYl9pbWFnZSI6IiIsImNocm9tZV93ZWJfYmFkZ2UiOiIiLCJjb250ZW50X2F2YWlsYWJsZSI6ZmFsc2UsImNvbnRlbnRzIjp7ImVuIjoidGVzdCAyIn0sImNvbnZlcnRlZCI6MCwiZGF0YSI6bnVsbCwiZGVsYXllZF9vcHRpb24iOiJpbW1lZGlhdGUiLCJkZWxpdmVyeV90aW1lX29mX2RheSI6IjEyOjIwUE0iLCJlcnJvcmVkIjowLCJleGNsdWRlZF9zZWdtZW50cyI6W10sImZhaWxlZCI6MCwiZmlyZWZveF9pY29uIjoiIiwiaGVhZGluZ3MiOnsiZW4iOiJUZXN0IDIifSwiaWQiOiI5OTI1MzAyOC1iNThmLTQ3YjEtYjgxZC01NDAwZjFkZjI5ODUiLCJpbmNsdWRlX3BsYXllcl9pZHMiOm51bGwsImluY2x1ZGVkX3NlZ21lbnRzIjpbIkFsbCJdLCJpb3NfYmFkZ2VDb3VudCI6MSwiaW9zX2JhZGdlVHlwZSI6Ik5vbmUiLCJpb3NfY2F0ZWdvcnkiOiIiLCJpb3Nfc291bmQiOiJuZXdDYW1wYWlnbi53YXYiLCJhcG5zX2FsZXJ0Ijp7fSwiaXNBZG0iOmZhbHNlLCJpc0FuZHJvaWQiOmZhbHNlLCJpc0Nocm9tZSI6ZmFsc2UsImlzQ2hyb21lV2ViIjpmYWxzZSwiaXNBbGV4YSI6ZmFsc2UsImlzRmlyZWZveCI6ZmFsc2UsImlzSW9zIjp0cnVlLCJpc1NhZmFyaSI6ZmFsc2UsImlzV1AiOmZhbHNlLCJpc1dQX1dOUyI6ZmFsc2UsImlzRWRnZSI6ZmFsc2UsImxhcmdlX2ljb24iOiIiLCJwcmlvcml0eSI6NSwicXVldWVkX2F0IjoxNTMwMTgxMjgwLCJyZW1haW5pbmciOjAsInNlbmRfYWZ0ZXIiOjE1MzAxODEyODAsImNvbXBsZXRlZF9hdCI6MTUzMDE4MTI4MCwic21hbGxfaWNvbiI6IiIsInN1Y2Nlc3NmdWwiOjEsInRhZ3MiOm51bGwsImZpbHRlcnMiOm51bGwsInRlbXBsYXRlX2lkIjpudWxsLCJ0dGwiOm51bGwsInVybCI6IiIsIndlYl9idXR0b25zIjpudWxsLCJ3ZWJfcHVzaF90b3BpYyI6bnVsbCwid3Bfc291bmQiOiIiLCJ3cF93bnNfc291bmQiOiIifSx7ImFkbV9iaWdfcGljdHVyZSI6IiIsImFkbV9ncm91cCI6IiIsImFkbV9ncm91cF9tZXNzYWdlIjp7ImVuIjoiIn0sImFkbV9sYXJnZV9pY29uIjoiIiwiYWRtX3NtYWxsX2ljb24iOiIiLCJhZG1fc291bmQiOiIiLCJzcG9rZW5fdGV4dCI6e30sImFsZXhhX3NzbWwiOm51bGwsImFsZXhhX2Rpc3BsYXlfdGl0bGUiOm51bGwsImFtYXpvbl9iYWNrZ3JvdW5kX2RhdGEiOmZhbHNlLCJhbmRyb2lkX2FjY2VudF9jb2xvciI6IiIsImFuZHJvaWRfZ3JvdXAiOiIiLCJhbmRyb2lkX2dyb3VwX21lc3NhZ2UiOnsiZW4iOiIifSwiYW5kcm9pZF9sZWRfY29sb3IiOiIiLCJhbmRyb2lkX3NvdW5kIjoiIiwiYW5kcm9pZF92aXNpYmlsaXR5IjoxLCJhcHBfaWQiOiIyMmJjNmRlYy01MTUwLTRkNmQtODYyOC0zNzcyNTlkMmRkMTQiLCJiaWdfcGljdHVyZSI6IiIsImJ1dHRvbnMiOm51bGwsImNhbmNlbGVkIjpmYWxzZSwiY2hyb21lX2JpZ19waWN0dXJlIjoiIiwiY2hyb21lX2ljb24iOiIiLCJjaHJvbWVfd2ViX2ljb24iOiIiLCJjaHJvbWVfd2ViX2ltYWdlIjoiIiwiY2hyb21lX3dlYl9iYWRnZSI6IiIsImNvbnRlbnRfYXZhaWxhYmxlIjpmYWxzZSwiY29udGVudHMiOnsiZW4iOiJ0ZXN0IDEifSwiY29udmVydGVkIjowLCJkYXRhIjpudWxsLCJkZWxheWVkX29wdGlvbiI6ImltbWVkaWF0ZSIsImRlbGl2ZXJ5X3RpbWVfb2ZfZGF5IjoiMTI6MThQTSIsImVycm9yZWQiOjAsImV4Y2x1ZGVkX3NlZ21lbnRzIjpbXSwiZmFpbGVkIjowLCJmaXJlZm94X2ljb24iOiIiLCJoZWFkaW5ncyI6eyJlbiI6IlJld2FyZCAxIn0sImlkIjoiOTVjNGI0NDktN2I3Yi00NDVkLWEzNmItMjZhZTYzOTcxNmI0IiwiaW5jbHVkZV9wbGF5ZXJfaWRzIjpudWxsLCJpbmNsdWRlZF9zZWdtZW50cyI6WyJBbGwiXSwiaW9zX2JhZGdlQ291bnQiOjEsImlvc19iYWRnZVR5cGUiOiJOb25lIiwiaW9zX2NhdGVnb3J5IjoiIiwiaW9zX3NvdW5kIjoicmV3YXJkLndhdiIsImFwbnNfYWxlcnQiOnt9LCJpc0FkbSI6ZmFsc2UsImlzQW5kcm9pZCI6ZmFsc2UsImlzQ2hyb21lIjpmYWxzZSwiaXNDaHJvbWVXZWIiOmZhbHNlLCJpc0FsZXhhIjpmYWxzZSwiaXNGaXJlZm94IjpmYWxzZSwiaXNJb3MiOnRydWUsImlzU2FmYXJpIjpmYWxzZSwiaXNXUCI6ZmFsc2UsImlzV1BfV05TIjpmYWxzZSwiaXNFZGdlIjpmYWxzZSwibGFyZ2VfaWNvbiI6IiIsInByaW9yaXR5Ijo1LCJxdWV1ZWRfYXQiOjE1MzAxODExNTgsInJlbWFpbmluZyI6MCwic2VuZF9hZnRlciI6MTUzMDE4MTE1OCwiY29tcGxldGVkX2F0IjoxNTMwMTgxMTU5LCJzbWFsbF9pY29uIjoiIiwic3VjY2Vzc2Z1bCI6MSwidGFncyI6bnVsbCwiZmlsdGVycyI6bnVsbCwidGVtcGxhdGVfaWQiOm51bGwsInR0bCI6bnVsbCwidXJsIjoiIiwid2ViX2J1dHRvbnMiOm51bGwsIndlYl9wdXNoX3RvcGljIjpudWxsLCJ3cF9zb3VuZCI6IiIsIndwX3duc19zb3VuZCI6IiJ9LHsiYWRtX2JpZ19waWN0dXJlIjoiIiwiYWRtX2dyb3VwIjoiIiwiYWRtX2dyb3VwX21lc3NhZ2UiOnsiZW4iOiIifSwiYWRtX2xhcmdlX2ljb24iOiIiLCJhZG1fc21hbGxfaWNvbiI6IiIsImFkbV9zb3VuZCI6IiIsInNwb2tlbl90ZXh0Ijp7fSwiYWxleGFfc3NtbCI6bnVsbCwiYWxleGFfZGlzcGxheV90aXRsZSI6bnVsbCwiYW1hem9uX2JhY2tncm91bmRfZGF0YSI6ZmFsc2UsImFuZHJvaWRfYWNjZW50X2NvbG9yIjoiIiwiYW5kcm9pZF9ncm91cCI6IiIsImFuZHJvaWRfZ3JvdXBfbWVzc2FnZSI6eyJlbiI6IiJ9LCJhbmRyb2lkX2xlZF9jb2xvciI6IiIsImFuZHJvaWRfc291bmQiOiIiLCJhbmRyb2lkX3Zpc2liaWxpdHkiOjEsImFwcF9pZCI6IjIyYmM2ZGVjLTUxNTAtNGQ2ZC04NjI4LTM3NzI1OWQyZGQxNCIsImJpZ19waWN0dXJlIjoiIiwiYnV0dG9ucyI6Ilt7XCJpZFwiOlwiMVwiLFwidGV4dFwiOlwicGlwcG9cIixcImljb25cIjpcIlwifSx7XCJpZFwiOlwiMlwiLFwidGV4dFwiOlwicGx1dG9cIixcImljb25cIjpcIlwifSx7XCJpZFwiOlwiM1wiLFwidGV4dFwiOlwicXVhcXVhXCIsXCJpY29uXCI6XCJcIn1dIiwiY2FuY2VsZWQiOmZhbHNlLCJjaHJvbWVfYmlnX3BpY3R1cmUiOiIiLCJjaHJvbWVfaWNvbiI6IiIsImNocm9tZV93ZWJfaWNvbiI6IiIsImNocm9tZV93ZWJfaW1hZ2UiOiIiLCJjaHJvbWVfd2ViX2JhZGdlIjoiIiwiY29udGVudF9hdmFpbGFibGUiOmZhbHNlLCJjb250ZW50cyI6eyJlbiI6ImZzZmEifSwiY29udmVydGVkIjoxLCJkYXRhIjpudWxsLCJkZWxheWVkX29wdGlvbiI6ImltbWVkaWF0ZSIsImRlbGl2ZXJ5X3RpbWVfb2ZfZGF5IjoiMTE6NDZBTSIsImVycm9yZWQiOjAsImV4Y2x1ZGVkX3NlZ21lbnRzIjpbXSwiZmFpbGVkIjowLCJmaXJlZm94X2ljb24iOiIiLCJoZWFkaW5ncyI6eyJlbiI6ImRzYWRhc2RhIn0sImlkIjoiZmFmNThkMmMtZjQ1ZS00YWI1LTk1NzMtMDc3ZTQ2NDM1MTdiIiwiaW5jbHVkZV9wbGF5ZXJfaWRzIjpudWxsLCJpbmNsdWRlZF9zZWdtZW50cyI6WyJBbGwiXSwiaW9zX2JhZGdlQ291bnQiOjEsImlvc19iYWRnZVR5cGUiOiJOb25lIiwiaW9zX2NhdGVnb3J5IjoiIiwiaW9zX3NvdW5kIjoiIiwiYXBuc19hbGVydCI6e30sImlzQWRtIjpmYWxzZSwiaXNBbmRyb2lkIjpmYWxzZSwiaXNDaHJvbWUiOmZhbHNlLCJpc0Nocm9tZVdlYiI6ZmFsc2UsImlzQWxleGEiOmZhbHNlLCJpc0ZpcmVmb3giOmZhbHNlLCJpc0lvcyI6dHJ1ZSwiaXNTYWZhcmkiOmZhbHNlLCJpc1dQIjpmYWxzZSwiaXNXUF9XTlMiOmZhbHNlLCJpc0VkZ2UiOmZhbHNlLCJsYXJnZV9pY29uIjoiIiwicHJpb3JpdHkiOjUsInF1ZXVlZF9hdCI6MTUzMDE3OTIwMSwicmVtYWluaW5nIjowLCJzZW5kX2FmdGVyIjoxNTMwMTc5MjAxLCJjb21wbGV0ZWRfYXQiOjE1MzAxNzkyMDEsInNtYWxsX2ljb24iOiIiLCJzdWNjZXNzZnVsIjoxLCJ0YWdzIjpudWxsLCJmaWx0ZXJzIjpudWxsLCJ0ZW1wbGF0ZV9pZCI6bnVsbCwidHRsIjpudWxsLCJ1cmwiOiIiLCJ3ZWJfYnV0dG9ucyI6bnVsbCwid2ViX3B1c2hfdG9waWMiOm51bGwsIndwX3NvdW5kIjoiIiwid3Bfd25zX3NvdW5kIjoiIn0seyJhZG1fYmlnX3BpY3R1cmUiOiIiLCJhZG1fZ3JvdXAiOiIiLCJhZG1fZ3JvdXBfbWVzc2FnZSI6eyJlbiI6IiJ9LCJhZG1fbGFyZ2VfaWNvbiI6IiIsImFkbV9zbWFsbF9pY29uIjoiIiwiYWRtX3NvdW5kIjoiIiwic3Bva2VuX3RleHQiOnt9LCJhbGV4YV9zc21sIjpudWxsLCJhbGV4YV9kaXNwbGF5X3RpdGxlIjpudWxsLCJhbWF6b25fYmFja2dyb3VuZF9kYXRhIjpmYWxzZSwiYW5kcm9pZF9hY2NlbnRfY29sb3IiOiIiLCJhbmRyb2lkX2dyb3VwIjoiIiwiYW5kcm9pZF9ncm91cF9tZXNzYWdlIjp7ImVuIjoiIn0sImFuZHJvaWRfbGVkX2NvbG9yIjoiIiwiYW5kcm9pZF9zb3VuZCI6IiIsImFuZHJvaWRfdmlzaWJpbGl0eSI6MSwiYXBwX2lkIjoiMjJiYzZkZWMtNTE1MC00ZDZkLTg2MjgtMzc3MjU5ZDJkZDE0IiwiYmlnX3BpY3R1cmUiOiIiLCJidXR0b25zIjpudWxsLCJjYW5jZWxlZCI6ZmFsc2UsImNocm9tZV9iaWdfcGljdHVyZSI6IiIsImNocm9tZV9pY29uIjoiIiwiY2hyb21lX3dlYl9pY29uIjoiIiwiY2hyb21lX3dlYl9pbWFnZSI6IiIsImNocm9tZV93ZWJfYmFkZ2UiOiIiLCJjb250ZW50X2F2YWlsYWJsZSI6ZmFsc2UsImNvbnRlbnRzIjp7ImVuIjoidmlzaXRhIGlsIG5vc3RybyBzaXRvIHdlYiAyIn0sImNvbnZlcnRlZCI6MSwiZGF0YSI6bnVsbCwiZGVsYXllZF9vcHRpb24iOiJpbW1lZGlhdGUiLCJkZWxpdmVyeV90aW1lX29mX2RheSI6IjExOjQ0QU0iLCJlcnJvcmVkIjowLCJleGNsdWRlZF9zZWdtZW50cyI6W10sImZhaWxlZCI6MCwiZmlyZWZveF9pY29uIjoiIiwiaGVhZGluZ3MiOnsiZW4iOiJkYXNkc2FkIn0sImlkIjoiMDJhNGYyZmItYTZiNi00MmM4LWE5NWQtYjVhYTg3MjM0YTk5IiwiaW5jbHVkZV9wbGF5ZXJfaWRzIjpudWxsLCJpbmNsdWRlZF9zZWdtZW50cyI6WyJBbGwiXSwiaW9zX2JhZGdlQ291bnQiOjEsImlvc19iYWRnZVR5cGUiOiJOb25lIiwiaW9zX2NhdGVnb3J5IjoiIiwiaW9zX3NvdW5kIjoiIiwiYXBuc19hbGVydCI6e30sImlzQWRtIjpmYWxzZSwiaXNBbmRyb2lkIjpmYWxzZSwiaXNDaHJvbWUiOmZhbHNlLCJpc0Nocm9tZVdlYiI6ZmFsc2UsImlzQWxleGEiOmZhbHNlLCJpc0ZpcmVmb3giOmZhbHNlLCJpc0lvcyI6dHJ1ZSwiaXNTYWZhcmkiOmZhbHNlLCJpc1dQIjpmYWxzZSwiaXNXUF9XTlMiOmZhbHNlLCJpc0VkZ2UiOmZhbHNlLCJsYXJnZV9pY29uIjoiIiwicHJpb3JpdHkiOjUsInF1ZXVlZF9hdCI6MTUzMDE3OTEyNiwicmVtYWluaW5nIjowLCJzZW5kX2FmdGVyIjoxNTMwMTc5MTI2LCJjb21wbGV0ZWRfYXQiOjE1MzAxNzkxMjYsInNtYWxsX2ljb24iOiIiLCJzdWNjZXNzZnVsIjoxLCJ0YWdzIjpudWxsLCJmaWx0ZXJzIjpudWxsLCJ0ZW1wbGF0ZV9pZCI6bnVsbCwidHRsIjpudWxsLCJ1cmwiOiJodHRwOi8vd29yZHByZXNzLTE4NDEyMi01NDEyODEuY2xvdWR3YXlzYXBwcy5jb20vIiwid2ViX2J1dHRvbnMiOm51bGwsIndlYl9wdXNoX3RvcGljIjpudWxsLCJ3cF9zb3VuZCI6IiIsIndwX3duc19zb3VuZCI6IiJ9LHsiYWRtX2JpZ19waWN0dXJlIjoiIiwiYWRtX2dyb3VwIjoiIiwiYWRtX2dyb3VwX21lc3NhZ2UiOnsiZW4iOiIifSwiYWRtX2xhcmdlX2ljb24iOiIiLCJhZG1fc21hbGxfaWNvbiI6IiIsImFkbV9zb3VuZCI6IiIsInNwb2tlbl90ZXh0Ijp7fSwiYWxleGFfc3NtbCI6bnVsbCwiYWxleGFfZGlzcGxheV90aXRsZSI6bnVsbCwiYW1hem9uX2JhY2tncm91bmRfZGF0YSI6ZmFsc2UsImFuZHJvaWRfYWNjZW50X2NvbG9yIjoiIiwiYW5kcm9pZF9ncm91cCI6IiIsImFuZHJvaWRfZ3JvdXBfbWVzc2FnZSI6eyJlbiI6IiJ9LCJhbmRyb2lkX2xlZF9jb2xvciI6IiIsImFuZHJvaWRfc291bmQiOiIiLCJhbmRyb2lkX3Zpc2liaWxpdHkiOjEsImFwcF9pZCI6IjIyYmM2ZGVjLTUxNTAtNGQ2ZC04NjI4LTM3NzI1OWQyZGQxNCIsImJpZ19waWN0dXJlIjoiIiwiYnV0dG9ucyI6bnVsbCwiY2FuY2VsZWQiOmZhbHNlLCJjaHJvbWVfYmlnX3BpY3R1cmUiOiIiLCJjaHJvbWVfaWNvbiI6IiIsImNocm9tZV93ZWJfaWNvbiI6IiIsImNocm9tZV93ZWJfaW1hZ2UiOiIiLCJjaHJvbWVfd2ViX2JhZGdlIjoiIiwiY29udGVudF9hdmFpbGFibGUiOmZhbHNlLCJjb250ZW50cyI6eyJlbiI6InZpc2l0YSBpbCBub3N0cm8gc2l0byB3ZWIifSwiY29udmVydGVkIjoxLCJkYXRhIjp7ImtleTEiOiJwaXBwbyJ9LCJkZWxheWVkX29wdGlvbiI6ImltbWVkaWF0ZSIsImRlbGl2ZXJ5X3RpbWVfb2ZfZGF5IjoiMTE6MzhBTSIsImVycm9yZWQiOjAsImV4Y2x1ZGVkX3NlZ21lbnRzIjpbXSwiZmFpbGVkIjowLCJmaXJlZm94X2ljb24iOiIiLCJoZWFkaW5ncyI6eyJlbiI6IkNpYW8gY2lhb25lIn0sImlkIjoiNjkyZjk5OGUtZjczZC00ZGRlLWJmNTktNDU4NjkzNTg2YjdmIiwiaW5jbHVkZV9wbGF5ZXJfaWRzIjpudWxsLCJpbmNsdWRlZF9zZWdtZW50cyI6WyJBbGwiXSwiaW9zX2JhZGdlQ291bnQiOjEsImlvc19iYWRnZVR5cGUiOiJOb25lIiwiaW9zX2NhdGVnb3J5IjoiIiwiaW9zX3NvdW5kIjoiIiwiYXBuc19hbGVydCI6e30sImlzQWRtIjpmYWxzZSwiaXNBbmRyb2lkIjpmYWxzZSwiaXNDaHJvbWUiOmZhbHNlLCJpc0Nocm9tZVdlYiI6ZmFsc2UsImlzQWxleGEiOmZhbHNlLCJpc0ZpcmVmb3giOmZhbHNlLCJpc0lvcyI6dHJ1ZSwiaXNTYWZhcmkiOmZhbHNlLCJpc1dQIjpmYWxzZSwiaXNXUF9XTlMiOmZhbHNlLCJpc0VkZ2UiOmZhbHNlLCJsYXJnZV9pY29uIjoiIiwicHJpb3JpdHkiOjUsInF1ZXVlZF9hdCI6MTUzMDE3OTA2MSwicmVtYWluaW5nIjowLCJzZW5kX2FmdGVyIjoxNTMwMTc5MDYxLCJjb21wbGV0ZWRfYXQiOjE1MzAxNzkwNjIsInNtYWxsX2ljb24iOiIiLCJzdWNjZXNzZnVsIjoxLCJ0YWdzIjpudWxsLCJmaWx0ZXJzIjpudWxsLCJ0ZW1wbGF0ZV9pZCI6bnVsbCwidHRsIjpudWxsLCJ1cmwiOiJodHRwOi8vd29yZHByZXNzLTE4NDEyMi01NDEyODEuY2xvdWR3YXlzYXBwcy5jb20vIiwid2ViX2J1dHRvbnMiOm51bGwsIndlYl9wdXNoX3RvcGljIjpudWxsLCJ3cF9zb3VuZCI6IiIsIndwX3duc19zb3VuZCI6IiJ9LHsiYWRtX2JpZ19waWN0dXJlIjpudWxsLCJhZG1fZ3JvdXAiOm51bGwsImFkbV9ncm91cF9tZXNzYWdlIjpudWxsLCJhZG1fbGFyZ2VfaWNvbiI6bnVsbCwiYWRtX3NtYWxsX2ljb24iOm51bGwsImFkbV9zb3VuZCI6bnVsbCwic3Bva2VuX3RleHQiOm51bGwsImFsZXhhX3NzbWwiOm51bGwsImFsZXhhX2Rpc3BsYXlfdGl0bGUiOm51bGwsImFtYXpvbl9iYWNrZ3JvdW5kX2RhdGEiOm51bGwsImFuZHJvaWRfYWNjZW50X2NvbG9yIjpudWxsLCJhbmRyb2lkX2dyb3VwIjpudWxsLCJhbmRyb2lkX2dyb3VwX21lc3NhZ2UiOm51bGwsImFuZHJvaWRfbGVkX2NvbG9yIjpudWxsLCJhbmRyb2lkX3NvdW5kIjpudWxsLCJhbmRyb2lkX3Zpc2liaWxpdHkiOm51bGwsImFwcF9pZCI6IjIyYmM2ZGVjLTUxNTAtNGQ2ZC04NjI4LTM3NzI1OWQyZGQxNCIsImJpZ19waWN0dXJlIjpudWxsLCJidXR0b25zIjpudWxsLCJjYW5jZWxlZCI6ZmFsc2UsImNocm9tZV9iaWdfcGljdHVyZSI6bnVsbCwiY2hyb21lX2ljb24iOm51bGwsImNocm9tZV93ZWJfaWNvbiI6bnVsbCwiY2hyb21lX3dlYl9pbWFnZSI6bnVsbCwiY2hyb21lX3dlYl9iYWRnZSI6bnVsbCwiY29udGVudF9hdmFpbGFibGUiOm51bGwsImNvbnRlbnRzIjp7ImVuIjoiTGl2ZSBUZXN0In0sImNvbnZlcnRlZCI6MSwiZGF0YSI6bnVsbCwiZGVsYXllZF9vcHRpb24iOm51bGwsImRlbGl2ZXJ5X3RpbWVfb2ZfZGF5IjpudWxsLCJlcnJvcmVkIjowLCJleGNsdWRlZF9zZWdtZW50cyI6W10sImZhaWxlZCI6MCwiZmlyZWZveF9pY29uIjpudWxsLCJoZWFkaW5ncyI6eyJlbiI6IlRoaXMgaXMgYSBsaXZlIHRlc3QgZm9yIE9uZVNpZ25hbCJ9LCJpZCI6ImZlODJjMWFlLTU0YzItNDU4Yi04YWFkLTdlZGMzZThhOTZjNCIsImluY2x1ZGVfcGxheWVyX2lkcyI6bnVsbCwiaW5jbHVkZWRfc2VnbWVudHMiOlsiQWN0aXZlIFVzZXJzIl0sImlvc19iYWRnZUNvdW50IjpudWxsLCJpb3NfYmFkZ2VUeXBlIjpudWxsLCJpb3NfY2F0ZWdvcnkiOm51bGwsImlvc19zb3VuZCI6bnVsbCwiYXBuc19hbGVydCI6bnVsbCwiaXNBZG0iOmZhbHNlLCJpc0FuZHJvaWQiOmZhbHNlLCJpc0Nocm9tZSI6ZmFsc2UsImlzQ2hyb21lV2ViIjpmYWxzZSwiaXNBbGV4YSI6ZmFsc2UsImlzRmlyZWZveCI6ZmFsc2UsImlzSW9zIjp0cnVlLCJpc1NhZmFyaSI6ZmFsc2UsImlzV1AiOmZhbHNlLCJpc1dQX1dOUyI6ZmFsc2UsImlzRWRnZSI6ZmFsc2UsImxhcmdlX2ljb24iOm51bGwsInByaW9yaXR5IjpudWxsLCJxdWV1ZWRfYXQiOjE1MzAxNzg5MjUsInJlbWFpbmluZyI6MCwic2VuZF9hZnRlciI6MTUzMDE3ODkyNSwiY29tcGxldGVkX2F0IjoxNTMwMTc4OTI1LCJzbWFsbF9pY29uIjpudWxsLCJzdWNjZXNzZnVsIjoxLCJ0YWdzIjpudWxsLCJmaWx0ZXJzIjpudWxsLCJ0ZW1wbGF0ZV9pZCI6bnVsbCwidHRsIjpudWxsLCJ1cmwiOm51bGwsIndlYl9idXR0b25zIjpudWxsLCJ3ZWJfcHVzaF90b3BpYyI6bnVsbCwid3Bfc291bmQiOm51bGwsIndwX3duc19zb3VuZCI6bnVsbH0seyJhZG1fYmlnX3BpY3R1cmUiOm51bGwsImFkbV9ncm91cCI6bnVsbCwiYWRtX2dyb3VwX21lc3NhZ2UiOm51bGwsImFkbV9sYXJnZV9pY29uIjpudWxsLCJhZG1fc21hbGxfaWNvbiI6bnVsbCwiYWRtX3NvdW5kIjpudWxsLCJzcG9rZW5fdGV4dCI6bnVsbCwiYWxleGFfc3NtbCI6bnVsbCwiYWxleGFfZGlzcGxheV90aXRsZSI6bnVsbCwiYW1hem9uX2JhY2tncm91bmRfZGF0YSI6bnVsbCwiYW5kcm9pZF9hY2NlbnRfY29sb3IiOm51bGwsImFuZHJvaWRfZ3JvdXAiOm51bGwsImFuZHJvaWRfZ3JvdXBfbWVzc2FnZSI6bnVsbCwiYW5kcm9pZF9sZWRfY29sb3IiOm51bGwsImFuZHJvaWRfc291bmQiOm51bGwsImFuZHJvaWRfdmlzaWJpbGl0eSI6bnVsbCwiYXBwX2lkIjoiMjJiYzZkZWMtNTE1MC00ZDZkLTg2MjgtMzc3MjU5ZDJkZDE0IiwiYmlnX3BpY3R1cmUiOm51bGwsImJ1dHRvbnMiOm51bGwsImNhbmNlbGVkIjpmYWxzZSwiY2hyb21lX2JpZ19waWN0dXJlIjpudWxsLCJjaHJvbWVfaWNvbiI6bnVsbCwiY2hyb21lX3dlYl9pY29uIjpudWxsLCJjaHJvbWVfd2ViX2ltYWdlIjpudWxsLCJjaHJvbWVfd2ViX2JhZGdlIjpudWxsLCJjb250ZW50X2F2YWlsYWJsZSI6bnVsbCwiY29udGVudHMiOnsiZW4iOiJMaXZlIFRlc3QifSwiY29udmVydGVkIjowLCJkYXRhIjpudWxsLCJkZWxheWVkX29wdGlvbiI6bnVsbCwiZGVsaXZlcnlfdGltZV9vZl9kYXkiOm51bGwsImVycm9yZWQiOjAsImV4Y2x1ZGVkX3NlZ21lbnRzIjpbXSwiZmFpbGVkIjowLCJmaXJlZm94X2ljb24iOm51bGwsImhlYWRpbmdzIjp7ImVuIjoiVGhpcyBpcyBhIGxpdmUgdGVzdCBmb3IgT25lU2lnbmFsIn0sImlkIjoiMjg1M2FmYzMtYTZmNC00OTAwLTg2ZDQtM2IwMmI5NDlmMDBkIiwiaW5jbHVkZV9wbGF5ZXJfaWRzIjpudWxsLCJpbmNsdWRlZF9zZWdtZW50cyI6WyJBY3RpdmUgVXNlcnMiXSwiaW9zX2JhZGdlQ291bnQiOm51bGwsImlvc19iYWRnZVR5cGUiOm51bGwsImlvc19jYXRlZ29yeSI6bnVsbCwiaW9zX3NvdW5kIjpudWxsLCJhcG5zX2FsZXJ0IjpudWxsLCJpc0FkbSI6ZmFsc2UsImlzQW5kcm9pZCI6ZmFsc2UsImlzQ2hyb21lIjpmYWxzZSwiaXNDaHJvbWVXZWIiOmZhbHNlLCJpc0FsZXhhIjpmYWxzZSwiaXNGaXJlZm94IjpmYWxzZSwiaXNJb3MiOnRydWUsImlzU2FmYXJpIjpmYWxzZSwiaXNXUCI6ZmFsc2UsImlzV1BfV05TIjpmYWxzZSwiaXNFZGdlIjpmYWxzZSwibGFyZ2VfaWNvbiI6bnVsbCwicHJpb3JpdHkiOm51bGwsInF1ZXVlZF9hdCI6MTUzMDE3ODg0NiwicmVtYWluaW5nIjowLCJzZW5kX2FmdGVyIjoxNTMwMTc4ODQ2LCJjb21wbGV0ZWRfYXQiOjE1MzAxNzg4NDYsInNtYWxsX2ljb24iOm51bGwsInN1Y2Nlc3NmdWwiOjEsInRhZ3MiOm51bGwsImZpbHRlcnMiOm51bGwsInRlbXBsYXRlX2lkIjpudWxsLCJ0dGwiOm51bGwsInVybCI6bnVsbCwid2ViX2J1dHRvbnMiOm51bGwsIndlYl9wdXNoX3RvcGljIjpudWxsLCJ3cF9zb3VuZCI6bnVsbCwid3Bfd25zX3NvdW5kIjpudWxsfSx7ImFkbV9iaWdfcGljdHVyZSI6bnVsbCwiYWRtX2dyb3VwIjpudWxsLCJhZG1fZ3JvdXBfbWVzc2FnZSI6bnVsbCwiYWRtX2xhcmdlX2ljb24iOm51bGwsImFkbV9zbWFsbF9pY29uIjpudWxsLCJhZG1fc291bmQiOm51bGwsInNwb2tlbl90ZXh0IjpudWxsLCJhbGV4YV9zc21sIjpudWxsLCJhbGV4YV9kaXNwbGF5X3RpdGxlIjpudWxsLCJhbWF6b25fYmFja2dyb3VuZF9kYXRhIjpudWxsLCJhbmRyb2lkX2FjY2VudF9jb2xvciI6bnVsbCwiYW5kcm9pZF9ncm91cCI6bnVsbCwiYW5kcm9pZF9ncm91cF9tZXNzYWdlIjpudWxsLCJhbmRyb2lkX2xlZF9jb2xvciI6bnVsbCwiYW5kcm9pZF9zb3VuZCI6bnVsbCwiYW5kcm9pZF92aXNpYmlsaXR5IjpudWxsLCJhcHBfaWQiOiIyMmJjNmRlYy01MTUwLTRkNmQtODYyOC0zNzcyNTlkMmRkMTQiLCJiaWdfcGljdHVyZSI6bnVsbCwiYnV0dG9ucyI6bnVsbCwiY2FuY2VsZWQiOmZhbHNlLCJjaHJvbWVfYmlnX3BpY3R1cmUiOm51bGwsImNocm9tZV9pY29uIjpudWxsLCJjaHJvbWVfd2ViX2ljb24iOm51bGwsImNocm9tZV93ZWJfaW1hZ2UiOm51bGwsImNocm9tZV93ZWJfYmFkZ2UiOm51bGwsImNvbnRlbnRfYXZhaWxhYmxlIjpudWxsLCJjb250ZW50cyI6eyJlbiI6IkxpdmUgVGVzdCJ9LCJjb252ZXJ0ZWQiOjEsImRhdGEiOm51bGwsImRlbGF5ZWRfb3B0aW9uIjpudWxsLCJkZWxpdmVyeV90aW1lX29mX2RheSI6bnVsbCwiZXJyb3JlZCI6MCwiZXhjbHVkZWRfc2VnbWVudHMiOltdLCJmYWlsZWQiOjAsImZpcmVmb3hfaWNvbiI6bnVsbCwiaGVhZGluZ3MiOnsiZW4iOiJUaGlzIGlzIGEgbGl2ZSB0ZXN0IGZvciBPbmVTaWduYWwifSwiaWQiOiJiYThhOTNlMC03OTYyLTRlMzItYTIwMS1lODFlYjhhNDY0MTUiLCJpbmNsdWRlX3BsYXllcl9pZHMiOm51bGwsImluY2x1ZGVkX3NlZ21lbnRzIjpbIkFjdGl2ZSBVc2VycyJdLCJpb3NfYmFkZ2VDb3VudCI6bnVsbCwiaW9zX2JhZGdlVHlwZSI6bnVsbCwiaW9zX2NhdGVnb3J5IjpudWxsLCJpb3Nfc291bmQiOm51bGwsImFwbnNfYWxlcnQiOm51bGwsImlzQWRtIjpmYWxzZSwiaXNBbmRyb2lkIjpmYWxzZSwiaXNDaHJvbWUiOmZhbHNlLCJpc0Nocm9tZVdlYiI6ZmFsc2UsImlzQWxleGEiOmZhbHNlLCJpc0ZpcmVmb3giOmZhbHNlLCJpc0lvcyI6dHJ1ZSwiaXNTYWZhcmkiOmZhbHNlLCJpc1dQIjpmYWxzZSwiaXNXUF9XTlMiOmZhbHNlLCJpc0VkZ2UiOmZhbHNlLCJsYXJnZV9pY29uIjpudWxsLCJwcmlvcml0eSI6bnVsbCwicXVldWVkX2F0IjoxNTMwMTc4NzgwLCJyZW1haW5pbmciOjAsInNlbmRfYWZ0ZXIiOjE1MzAxNzg3ODAsImNvbXBsZXRlZF9hdCI6MTUzMDE3ODc4MSwic21hbGxfaWNvbiI6bnVsbCwic3VjY2Vzc2Z1bCI6MSwidGFncyI6bnVsbCwiZmlsdGVycyI6bnVsbCwidGVtcGxhdGVfaWQiOm51bGwsInR0bCI6bnVsbCwidXJsIjpudWxsLCJ3ZWJfYnV0dG9ucyI6bnVsbCwid2ViX3B1c2hfdG9waWMiOm51bGwsIndwX3NvdW5kIjpudWxsLCJ3cF93bnNfc291bmQiOm51bGx9LHsiYWRtX2JpZ19waWN0dXJlIjpudWxsLCJhZG1fZ3JvdXAiOm51bGwsImFkbV9ncm91cF9tZXNzYWdlIjpudWxsLCJhZG1fbGFyZ2VfaWNvbiI6bnVsbCwiYWRtX3NtYWxsX2ljb24iOm51bGwsImFkbV9zb3VuZCI6bnVsbCwic3Bva2VuX3RleHQiOm51bGwsImFsZXhhX3NzbWwiOm51bGwsImFsZXhhX2Rpc3BsYXlfdGl0bGUiOm51bGwsImFtYXpvbl9iYWNrZ3JvdW5kX2RhdGEiOm51bGwsImFuZHJvaWRfYWNjZW50X2NvbG9yIjpudWxsLCJhbmRyb2lkX2dyb3VwIjpudWxsLCJhbmRyb2lkX2dyb3VwX21lc3NhZ2UiOm51bGwsImFuZHJvaWRfbGVkX2NvbG9yIjpudWxsLCJhbmRyb2lkX3NvdW5kIjpudWxsLCJhbmRyb2lkX3Zpc2liaWxpdHkiOm51bGwsImFwcF9pZCI6IjIyYmM2ZGVjLTUxNTAtNGQ2ZC04NjI4LTM3NzI1OWQyZGQxNCIsImJpZ19waWN0dXJlIjpudWxsLCJidXR0b25zIjpudWxsLCJjYW5jZWxlZCI6ZmFsc2UsImNocm9tZV9iaWdfcGljdHVyZSI6bnVsbCwiY2hyb21lX2ljb24iOm51bGwsImNocm9tZV93ZWJfaWNvbiI6bnVsbCwiY2hyb21lX3dlYl9pbWFnZSI6bnVsbCwiY2hyb21lX3dlYl9iYWRnZSI6bnVsbCwiY29udGVudF9hdmFpbGFibGUiOm51bGwsImNvbnRlbnRzIjp7ImVuIjoiTGl2ZSBUZXN0In0sImNvbnZlcnRlZCI6MSwiZGF0YSI6bnVsbCwiZGVsYXllZF9vcHRpb24iOm51bGwsImRlbGl2ZXJ5X3RpbWVfb2ZfZGF5IjpudWxsLCJlcnJvcmVkIjowLCJleGNsdWRlZF9zZWdtZW50cyI6W10sImZhaWxlZCI6MCwiZmlyZWZveF9pY29uIjpudWxsLCJoZWFkaW5ncyI6eyJlbiI6IlRoaXMgaXMgYSBsaXZlIHRlc3QgZm9yIE9uZVNpZ25hbCJ9LCJpZCI6ImRmMzlkZGJjLTY2NmItNGVjNS1hMmQ0LWY5ZTEyNDhjMmYzZiIsImluY2x1ZGVfcGxheWVyX2lkcyI6bnVsbCwiaW5jbHVkZWRfc2VnbWVudHMiOlsiQWN0aXZlIFVzZXJzIl0sImlvc19iYWRnZUNvdW50IjpudWxsLCJpb3NfYmFkZ2VUeXBlIjpudWxsLCJpb3NfY2F0ZWdvcnkiOm51bGwsImlvc19zb3VuZCI6bnVsbCwiYXBuc19hbGVydCI6bnVsbCwiaXNBZG0iOmZhbHNlLCJpc0FuZHJvaWQiOmZhbHNlLCJpc0Nocm9tZSI6ZmFsc2UsImlzQ2hyb21lV2ViIjpmYWxzZSwiaXNBbGV4YSI6ZmFsc2UsImlzRmlyZWZveCI6ZmFsc2UsImlzSW9zIjp0cnVlLCJpc1NhZmFyaSI6ZmFsc2UsImlzV1AiOmZhbHNlLCJpc1dQX1dOUyI6ZmFsc2UsImlzRWRnZSI6ZmFsc2UsImxhcmdlX2ljb24iOm51bGwsInByaW9yaXR5IjpudWxsLCJxdWV1ZWRfYXQiOjE1MzAxNzg3MzQsInJlbWFpbmluZyI6MCwic2VuZF9hZnRlciI6MTUzMDE3ODczNCwiY29tcGxldGVkX2F0IjoxNTMwMTc4NzM0LCJzbWFsbF9pY29uIjpudWxsLCJzdWNjZXNzZnVsIjoxLCJ0YWdzIjpudWxsLCJmaWx0ZXJzIjpudWxsLCJ0ZW1wbGF0ZV9pZCI6bnVsbCwidHRsIjpudWxsLCJ1cmwiOm51bGwsIndlYl9idXR0b25zIjpudWxsLCJ3ZWJfcHVzaF90b3BpYyI6bnVsbCwid3Bfc291bmQiOm51bGwsIndwX3duc19zb3VuZCI6bnVsbH0seyJhZG1fYmlnX3BpY3R1cmUiOiIiLCJhZG1fZ3JvdXAiOiIiLCJhZG1fZ3JvdXBfbWVzc2FnZSI6eyJlbiI6IiJ9LCJhZG1fbGFyZ2VfaWNvbiI6IiIsImFkbV9zbWFsbF9pY29uIjoiIiwiYWRtX3NvdW5kIjoiIiwic3Bva2VuX3RleHQiOnt9LCJhbGV4YV9zc21sIjpudWxsLCJhbGV4YV9kaXNwbGF5X3RpdGxlIjpudWxsLCJhbWF6b25fYmFja2dyb3VuZF9kYXRhIjpmYWxzZSwiYW5kcm9pZF9hY2NlbnRfY29sb3IiOiIiLCJhbmRyb2lkX2dyb3VwIjoiIiwiYW5kcm9pZF9ncm91cF9tZXNzYWdlIjp7ImVuIjoiIn0sImFuZHJvaWRfbGVkX2NvbG9yIjoiIiwiYW5kcm9pZF9zb3VuZCI6IiIsImFuZHJvaWRfdmlzaWJpbGl0eSI6MSwiYXBwX2lkIjoiMjJiYzZkZWMtNTE1MC00ZDZkLTg2MjgtMzc3MjU5ZDJkZDE0IiwiYmlnX3BpY3R1cmUiOiIiLCJidXR0b25zIjpudWxsLCJjYW5jZWxlZCI6ZmFsc2UsImNocm9tZV9iaWdfcGljdHVyZSI6IiIsImNocm9tZV9pY29uIjoiIiwiY2hyb21lX3dlYl9pY29uIjoiIiwiY2hyb21lX3dlYl9pbWFnZSI6IiIsImNocm9tZV93ZWJfYmFkZ2UiOiIiLCJjb250ZW50X2F2YWlsYWJsZSI6ZmFsc2UsImNvbnRlbnRzIjp7ImVuIjoiU2dyaWduaWduw6wifSwiY29udmVydGVkIjoxLCJkYXRhIjpudWxsLCJkZWxheWVkX29wdGlvbiI6ImltbWVkaWF0ZSIsImRlbGl2ZXJ5X3RpbWVfb2ZfZGF5IjoiMTE6MzNBTSIsImVycm9yZWQiOjAsImV4Y2x1ZGVkX3NlZ21lbnRzIjpbXSwiZmFpbGVkIjowLCJmaXJlZm94X2ljb24iOiIiLCJoZWFkaW5ncyI6eyJlbiI6IkNpYW8ifSwiaWQiOiJiMTIyNDg5YS00ODU0LTQ2NTMtODFiMy1mMTYyOThkYzRkOTYiLCJpbmNsdWRlX3BsYXllcl9pZHMiOm51bGwsImluY2x1ZGVkX3NlZ21lbnRzIjpbIkFjdGl2ZSBVc2VycyJdLCJpb3NfYmFkZ2VDb3VudCI6MSwiaW9zX2JhZGdlVHlwZSI6Ik5vbmUiLCJpb3NfY2F0ZWdvcnkiOiIiLCJpb3Nfc291bmQiOiIiLCJhcG5zX2FsZXJ0Ijp7fSwiaXNBZG0iOmZhbHNlLCJpc0FuZHJvaWQiOmZhbHNlLCJpc0Nocm9tZSI6ZmFsc2UsImlzQ2hyb21lV2ViIjpmYWxzZSwiaXNBbGV4YSI6ZmFsc2UsImlzRmlyZWZveCI6ZmFsc2UsImlzSW9zIjp0cnVlLCJpc1NhZmFyaSI6ZmFsc2UsImlzV1AiOmZhbHNlLCJpc1dQX1dOUyI6ZmFsc2UsImlzRWRnZSI6ZmFsc2UsImxhcmdlX2ljb24iOiIiLCJwcmlvcml0eSI6NSwicXVldWVkX2F0IjoxNTMwMTc4NTg2LCJyZW1haW5pbmciOjAsInNlbmRfYWZ0ZXIiOjE1MzAxNzg1ODcsImNvbXBsZXRlZF9hdCI6MTUzMDE3ODU4Nywic21hbGxfaWNvbiI6IiIsInN1Y2Nlc3NmdWwiOjEsInRhZ3MiOm51bGwsImZpbHRlcnMiOm51bGwsInRlbXBsYXRlX2lkIjpudWxsLCJ0dGwiOm51bGwsInVybCI6IiIsIndlYl9idXR0b25zIjpudWxsLCJ3ZWJfcHVzaF90b3BpYyI6bnVsbCwid3Bfc291bmQiOiIiLCJ3cF93bnNfc291bmQiOiIifSx7ImFkbV9iaWdfcGljdHVyZSI6bnVsbCwiYWRtX2dyb3VwIjpudWxsLCJhZG1fZ3JvdXBfbWVzc2FnZSI6bnVsbCwiYWRtX2xhcmdlX2ljb24iOm51bGwsImFkbV9zbWFsbF9pY29uIjpudWxsLCJhZG1fc291bmQiOm51bGwsInNwb2tlbl90ZXh0IjpudWxsLCJhbGV4YV9zc21sIjpudWxsLCJhbGV4YV9kaXNwbGF5X3RpdGxlIjpudWxsLCJhbWF6b25fYmFja2dyb3VuZF9kYXRhIjpudWxsLCJhbmRyb2lkX2FjY2VudF9jb2xvciI6bnVsbCwiYW5kcm9pZF9ncm91cCI6bnVsbCwiYW5kcm9pZF9ncm91cF9tZXNzYWdlIjpudWxsLCJhbmRyb2lkX2xlZF9jb2xvciI6bnVsbCwiYW5kcm9pZF9zb3VuZCI6bnVsbCwiYW5kcm9pZF92aXNpYmlsaXR5IjpudWxsLCJhcHBfaWQiOiIyMmJjNmRlYy01MTUwLTRkNmQtODYyOC0zNzcyNTlkMmRkMTQiLCJiaWdfcGljdHVyZSI6bnVsbCwiYnV0dG9ucyI6bnVsbCwiY2FuY2VsZWQiOmZhbHNlLCJjaHJvbWVfYmlnX3BpY3R1cmUiOm51bGwsImNocm9tZV9pY29uIjpudWxsLCJjaHJvbWVfd2ViX2ljb24iOm51bGwsImNocm9tZV93ZWJfaW1hZ2UiOm51bGwsImNocm9tZV93ZWJfYmFkZ2UiOm51bGwsImNvbnRlbnRfYXZhaWxhYmxlIjpudWxsLCJjb250ZW50cyI6eyJlbiI6IkxpdmUgVGVzdCJ9LCJjb252ZXJ0ZWQiOjAsImRhdGEiOm51bGwsImRlbGF5ZWRfb3B0aW9uIjpudWxsLCJkZWxpdmVyeV90aW1lX29mX2RheSI6bnVsbCwiZXJyb3JlZCI6MCwiZXhjbHVkZWRfc2VnbWVudHMiOltdLCJmYWlsZWQiOjAsImZpcmVmb3hfaWNvbiI6bnVsbCwiaGVhZGluZ3MiOnsiZW4iOiJUaGlzIGlzIGEgbGl2ZSB0ZXN0IGZvciBPbmVTaWduYWwifSwiaWQiOiJjM2ZiMGVlNC1iY2RkLTRiNzctYTkyZC0wMjJiNDYzYTg5OGYiLCJpbmNsdWRlX3BsYXllcl9pZHMiOm51bGwsImluY2x1ZGVkX3NlZ21lbnRzIjpbIkFjdGl2ZSBVc2VycyJdLCJpb3NfYmFkZ2VDb3VudCI6bnVsbCwiaW9zX2JhZGdlVHlwZSI6bnVsbCwiaW9zX2NhdGVnb3J5IjpudWxsLCJpb3Nfc291bmQiOm51bGwsImFwbnNfYWxlcnQiOm51bGwsImlzQWRtIjpmYWxzZSwiaXNBbmRyb2lkIjpmYWxzZSwiaXNDaHJvbWUiOmZhbHNlLCJpc0Nocm9tZVdlYiI6ZmFsc2UsImlzQWxleGEiOmZhbHNlLCJpc0ZpcmVmb3giOmZhbHNlLCJpc0lvcyI6dHJ1ZSwiaXNTYWZhcmkiOmZhbHNlLCJpc1dQIjpmYWxzZSwiaXNXUF9XTlMiOmZhbHNlLCJpc0VkZ2UiOmZhbHNlLCJsYXJnZV9pY29uIjpudWxsLCJwcmlvcml0eSI6bnVsbCwicXVldWVkX2F0IjoxNTMwMTc4NDk0LCJyZW1haW5pbmciOjAsInNlbmRfYWZ0ZXIiOjE1MzAxNzg0OTQsImNvbXBsZXRlZF9hdCI6MTUzMDE3ODQ5NCwic21hbGxfaWNvbiI6bnVsbCwic3VjY2Vzc2Z1bCI6MSwidGFncyI6bnVsbCwiZmlsdGVycyI6bnVsbCwidGVtcGxhdGVfaWQiOm51bGwsInR0bCI6bnVsbCwidXJsIjpudWxsLCJ3ZWJfYnV0dG9ucyI6bnVsbCwid2ViX3B1c2hfdG9waWMiOm51bGwsIndwX3NvdW5kIjpudWxsLCJ3cF93bnNfc291bmQiOm51bGx9LHsiYWRtX2JpZ19waWN0dXJlIjpudWxsLCJhZG1fZ3JvdXAiOm51bGwsImFkbV9ncm91cF9tZXNzYWdlIjpudWxsLCJhZG1fbGFyZ2VfaWNvbiI6bnVsbCwiYWRtX3NtYWxsX2ljb24iOm51bGwsImFkbV9zb3VuZCI6bnVsbCwic3Bva2VuX3RleHQiOm51bGwsImFsZXhhX3NzbWwiOm51bGwsImFsZXhhX2Rpc3BsYXlfdGl0bGUiOm51bGwsImFtYXpvbl9iYWNrZ3JvdW5kX2RhdGEiOm51bGwsImFuZHJvaWRfYWNjZW50X2NvbG9yIjpudWxsLCJhbmRyb2lkX2dyb3VwIjpudWxsLCJhbmRyb2lkX2dyb3VwX21lc3NhZ2UiOm51bGwsImFuZHJvaWRfbGVkX2NvbG9yIjpudWxsLCJhbmRyb2lkX3NvdW5kIjpudWxsLCJhbmRyb2lkX3Zpc2liaWxpdHkiOm51bGwsImFwcF9pZCI6IjIyYmM2ZGVjLTUxNTAtNGQ2ZC04NjI4LTM3NzI1OWQyZGQxNCIsImJpZ19waWN0dXJlIjpudWxsLCJidXR0b25zIjpudWxsLCJjYW5jZWxlZCI6ZmFsc2UsImNocm9tZV9iaWdfcGljdHVyZSI6bnVsbCwiY2hyb21lX2ljb24iOm51bGwsImNocm9tZV93ZWJfaWNvbiI6bnVsbCwiY2hyb21lX3dlYl9pbWFnZSI6bnVsbCwiY2hyb21lX3dlYl9iYWRnZSI6bnVsbCwiY29udGVudF9hdmFpbGFibGUiOm51bGwsImNvbnRlbnRzIjp7ImVuIjoiTGl2ZSBUZXN0In0sImNvbnZlcnRlZCI6MCwiZGF0YSI6bnVsbCwiZGVsYXllZF9vcHRpb24iOm51bGwsImRlbGl2ZXJ5X3RpbWVfb2ZfZGF5IjpudWxsLCJlcnJvcmVkIjowLCJleGNsdWRlZF9zZWdtZW50cyI6W10sImZhaWxlZCI6MCwiZmlyZWZveF9pY29uIjpudWxsLCJoZWFkaW5ncyI6eyJlbiI6IlRoaXMgaXMgYSBsaXZlIHRlc3QgZm9yIE9uZVNpZ25hbCJ9LCJpZCI6IjkwMmUyNThmLTIzYzYtNGQ1ZS1iMDM4LWNjYzE0ZWY3NDUwOCIsImluY2x1ZGVfcGxheWVyX2lkcyI6bnVsbCwiaW5jbHVkZWRfc2VnbWVudHMiOlsiQWN0aXZlIFVzZXJzIl0sImlvc19iYWRnZUNvdW50IjpudWxsLCJpb3NfYmFkZ2VUeXBlIjpudWxsLCJpb3NfY2F0ZWdvcnkiOm51bGwsImlvc19zb3VuZCI6bnVsbCwiYXBuc19hbGVydCI6bnVsbCwiaXNBZG0iOmZhbHNlLCJpc0FuZHJvaWQiOmZhbHNlLCJpc0Nocm9tZSI6ZmFsc2UsImlzQ2hyb21lV2ViIjpmYWxzZSwiaXNBbGV4YSI6ZmFsc2UsImlzRmlyZWZveCI6ZmFsc2UsImlzSW9zIjp0cnVlLCJpc1NhZmFyaSI6ZmFsc2UsImlzV1AiOmZhbHNlLCJpc1dQX1dOUyI6ZmFsc2UsImlzRWRnZSI6ZmFsc2UsImxhcmdlX2ljb24iOm51bGwsInByaW9yaXR5IjpudWxsLCJxdWV1ZWRfYXQiOjE1MzAxNzg0NzEsInJlbWFpbmluZyI6MCwic2VuZF9hZnRlciI6MTUzMDE3ODQ3MSwiY29tcGxldGVkX2F0IjoxNTMwMTc4NDcyLCJzbWFsbF9pY29uIjpudWxsLCJzdWNjZXNzZnVsIjoxLCJ0YWdzIjpudWxsLCJmaWx0ZXJzIjpudWxsLCJ0ZW1wbGF0ZV9pZCI6bnVsbCwidHRsIjpudWxsLCJ1cmwiOm51bGwsIndlYl9idXR0b25zIjpudWxsLCJ3ZWJfcHVzaF90b3BpYyI6bnVsbCwid3Bfc291bmQiOm51bGwsIndwX3duc19zb3VuZCI6bnVsbH0seyJhZG1fYmlnX3BpY3R1cmUiOm51bGwsImFkbV9ncm91cCI6bnVsbCwiYWRtX2dyb3VwX21lc3NhZ2UiOm51bGwsImFkbV9sYXJnZV9pY29uIjpudWxsLCJhZG1fc21hbGxfaWNvbiI6bnVsbCwiYWRtX3NvdW5kIjpudWxsLCJzcG9rZW5fdGV4dCI6bnVsbCwiYWxleGFfc3NtbCI6bnVsbCwiYWxleGFfZGlzcGxheV90aXRsZSI6bnVsbCwiYW1hem9uX2JhY2tncm91bmRfZGF0YSI6bnVsbCwiYW5kcm9pZF9hY2NlbnRfY29sb3IiOm51bGwsImFuZHJvaWRfZ3JvdXAiOm51bGwsImFuZHJvaWRfZ3JvdXBfbWVzc2FnZSI6bnVsbCwiYW5kcm9pZF9sZWRfY29sb3IiOm51bGwsImFuZHJvaWRfc291bmQiOm51bGwsImFuZHJvaWRfdmlzaWJpbGl0eSI6bnVsbCwiYXBwX2lkIjoiMjJiYzZkZWMtNTE1MC00ZDZkLTg2MjgtMzc3MjU5ZDJkZDE0IiwiYmlnX3BpY3R1cmUiOm51bGwsImJ1dHRvbnMiOm51bGwsImNhbmNlbGVkIjpmYWxzZSwiY2hyb21lX2JpZ19waWN0dXJlIjpudWxsLCJjaHJvbWVfaWNvbiI6bnVsbCwiY2hyb21lX3dlYl9pY29uIjpudWxsLCJjaHJvbWVfd2ViX2ltYWdlIjpudWxsLCJjaHJvbWVfd2ViX2JhZGdlIjpudWxsLCJjb250ZW50X2F2YWlsYWJsZSI6bnVsbCwiY29udGVudHMiOnsiZW4iOiJTZ3JpZ25pbsOsIn0sImNvbnZlcnRlZCI6MSwiZGF0YSI6bnVsbCwiZGVsYXllZF9vcHRpb24iOm51bGwsImRlbGl2ZXJ5X3RpbWVfb2ZfZGF5IjpudWxsLCJlcnJvcmVkIjowLCJleGNsdWRlZF9zZWdtZW50cyI6W10sImZhaWxlZCI6MCwiZmlyZWZveF9pY29uIjpudWxsLCJoZWFkaW5ncyI6eyJlbiI6IlNncmlnbmluw6wifSwiaWQiOiI4OGU1MWMyOC01NTkyLTQ1NmYtYjdlNS1mZDA2Y2I1YmUxNDgiLCJpbmNsdWRlX3BsYXllcl9pZHMiOm51bGwsImluY2x1ZGVkX3NlZ21lbnRzIjpbIkFjdGl2ZSBVc2VycyIsIkFsbCJdLCJpb3NfYmFkZ2VDb3VudCI6bnVsbCwiaW9zX2JhZGdlVHlwZSI6bnVsbCwiaW9zX2NhdGVnb3J5IjpudWxsLCJpb3Nfc291bmQiOm51bGwsImFwbnNfYWxlcnQiOm51bGwsImlzQWRtIjpmYWxzZSwiaXNBbmRyb2lkIjpmYWxzZSwiaXNDaHJvbWUiOmZhbHNlLCJpc0Nocm9tZVdlYiI6ZmFsc2UsImlzQWxleGEiOmZhbHNlLCJpc0ZpcmVmb3giOmZhbHNlLCJpc0lvcyI6dHJ1ZSwiaXNTYWZhcmkiOmZhbHNlLCJpc1dQIjpmYWxzZSwiaXNXUF9XTlMiOmZhbHNlLCJpc0VkZ2UiOmZhbHNlLCJsYXJnZV9pY29uIjpudWxsLCJwcmlvcml0eSI6bnVsbCwicXVldWVkX2F0IjoxNTMwMTc4Mjg3LCJyZW1haW5pbmciOjAsInNlbmRfYWZ0ZXIiOjE1MzAxNzgyODcsImNvbXBsZXRlZF9hdCI6MTUzMDE3ODI4OCwic21hbGxfaWNvbiI6bnVsbCwic3VjY2Vzc2Z1bCI6MSwidGFncyI6bnVsbCwiZmlsdGVycyI6bnVsbCwidGVtcGxhdGVfaWQiOm51bGwsInR0bCI6bnVsbCwidXJsIjpudWxsLCJ3ZWJfYnV0dG9ucyI6bnVsbCwid2ViX3B1c2hfdG9waWMiOm51bGwsIndwX3NvdW5kIjpudWxsLCJ3cF93bnNfc291bmQiOm51bGx9LHsiYWRtX2JpZ19waWN0dXJlIjpudWxsLCJhZG1fZ3JvdXAiOm51bGwsImFkbV9ncm91cF9tZXNzYWdlIjpudWxsLCJhZG1fbGFyZ2VfaWNvbiI6bnVsbCwiYWRtX3NtYWxsX2ljb24iOm51bGwsImFkbV9zb3VuZCI6bnVsbCwic3Bva2VuX3RleHQiOm51bGwsImFsZXhhX3NzbWwiOm51bGwsImFsZXhhX2Rpc3BsYXlfdGl0bGUiOm51bGwsImFtYXpvbl9iYWNrZ3JvdW5kX2RhdGEiOm51bGwsImFuZHJvaWRfYWNjZW50X2NvbG9yIjpudWxsLCJhbmRyb2lkX2dyb3VwIjpudWxsLCJhbmRyb2lkX2dyb3VwX21lc3NhZ2UiOm51bGwsImFuZHJvaWRfbGVkX2NvbG9yIjpudWxsLCJhbmRyb2lkX3NvdW5kIjpudWxsLCJhbmRyb2lkX3Zpc2liaWxpdHkiOm51bGwsImFwcF9pZCI6IjIyYmM2ZGVjLTUxNTAtNGQ2ZC04NjI4LTM3NzI1OWQyZGQxNCIsImJpZ19waWN0dXJlIjpudWxsLCJidXR0b25zIjpudWxsLCJjYW5jZWxlZCI6ZmFsc2UsImNocm9tZV9iaWdfcGljdHVyZSI6bnVsbCwiY2hyb21lX2ljb24iOm51bGwsImNocm9tZV93ZWJfaWNvbiI6bnVsbCwiY2hyb21lX3dlYl9pbWFnZSI6bnVsbCwiY2hyb21lX3dlYl9iYWRnZSI6bnVsbCwiY29udGVudF9hdmFpbGFibGUiOm51bGwsImNvbnRlbnRzIjp7ImVuIjoiU2dyaWduaW7DrCJ9LCJjb252ZXJ0ZWQiOjEsImRhdGEiOm51bGwsImRlbGF5ZWRfb3B0aW9uIjpudWxsLCJkZWxpdmVyeV90aW1lX29mX2RheSI6bnVsbCwiZXJyb3JlZCI6MCwiZXhjbHVkZWRfc2VnbWVudHMiOltdLCJmYWlsZWQiOjAsImZpcmVmb3hfaWNvbiI6bnVsbCwiaGVhZGluZ3MiOnsiZW4iOiJTZ3JpZ25pbsOsIn0sImlkIjoiNGFiMGYwNzMtOTc0OC00MTg5LThhYTctOTBkNzY1MDUwMzI1IiwiaW5jbHVkZV9wbGF5ZXJfaWRzIjpudWxsLCJpbmNsdWRlZF9zZWdtZW50cyI6WyJBY3RpdmUgVXNlcnMiLCJBbGwiXSwiaW9zX2JhZGdlQ291bnQiOm51bGwsImlvc19iYWRnZVR5cGUiOm51bGwsImlvc19jYXRlZ29yeSI6bnVsbCwiaW9zX3NvdW5kIjpudWxsLCJhcG5zX2FsZXJ0IjpudWxsLCJpc0FkbSI6ZmFsc2UsImlzQW5kcm9pZCI6ZmFsc2UsImlzQ2hyb21lIjpmYWxzZSwiaXNDaHJvbWVXZWIiOmZhbHNlLCJpc0FsZXhhIjpmYWxzZSwiaXNGaXJlZm94IjpmYWxzZSwiaXNJb3MiOnRydWUsImlzU2FmYXJpIjpmYWxzZSwiaXNXUCI6ZmFsc2UsImlzV1BfV05TIjpmYWxzZSwiaXNFZGdlIjpmYWxzZSwibGFyZ2VfaWNvbiI6bnVsbCwicHJpb3JpdHkiOm51bGwsInF1ZXVlZF9hdCI6MTUzMDE3ODI2OCwicmVtYWluaW5nIjowLCJzZW5kX2FmdGVyIjoxNTMwMTc4MjY4LCJjb21wbGV0ZWRfYXQiOjE1MzAxNzgyNjksInNtYWxsX2ljb24iOm51bGwsInN1Y2Nlc3NmdWwiOjEsInRhZ3MiOm51bGwsImZpbHRlcnMiOm51bGwsInRlbXBsYXRlX2lkIjpudWxsLCJ0dGwiOm51bGwsInVybCI6bnVsbCwid2ViX2J1dHRvbnMiOm51bGwsIndlYl9wdXNoX3RvcGljIjpudWxsLCJ3cF9zb3VuZCI6bnVsbCwid3Bfd25zX3NvdW5kIjpudWxsfSx7ImFkbV9iaWdfcGljdHVyZSI6IiIsImFkbV9ncm91cCI6IiIsImFkbV9ncm91cF9tZXNzYWdlIjp7ImVuIjoiIn0sImFkbV9sYXJnZV9pY29uIjoiIiwiYWRtX3NtYWxsX2ljb24iOiIiLCJhZG1fc291bmQiOiIiLCJzcG9rZW5fdGV4dCI6e30sImFsZXhhX3NzbWwiOm51bGwsImFsZXhhX2Rpc3BsYXlfdGl0bGUiOm51bGwsImFtYXpvbl9iYWNrZ3JvdW5kX2RhdGEiOmZhbHNlLCJhbmRyb2lkX2FjY2VudF9jb2xvciI6IiIsImFuZHJvaWRfZ3JvdXAiOiIiLCJhbmRyb2lkX2dyb3VwX21lc3NhZ2UiOnsiZW4iOiIifSwiYW5kcm9pZF9sZWRfY29sb3IiOiIiLCJhbmRyb2lkX3NvdW5kIjoiIiwiYW5kcm9pZF92aXNpYmlsaXR5IjoxLCJhcHBfaWQiOiIyMmJjNmRlYy01MTUwLTRkNmQtODYyOC0zNzcyNTlkMmRkMTQiLCJiaWdfcGljdHVyZSI6IiIsImJ1dHRvbnMiOm51bGwsImNhbmNlbGVkIjpmYWxzZSwiY2hyb21lX2JpZ19waWN0dXJlIjoiIiwiY2hyb21lX2ljb24iOiIiLCJjaHJvbWVfd2ViX2ljb24iOiIiLCJjaHJvbWVfd2ViX2ltYWdlIjoiIiwiY2hyb21lX3dlYl9iYWRnZSI6IiIsImNvbnRlbnRfYXZhaWxhYmxlIjpmYWxzZSwiY29udGVudHMiOnsiZW4iOiJTZ3JpZ25pZ27DrCJ9LCJjb252ZXJ0ZWQiOjEsImRhdGEiOm51bGwsImRlbGF5ZWRfb3B0aW9uIjoiaW1tZWRpYXRlIiwiZGVsaXZlcnlfdGltZV9vZl9kYXkiOiIxMToyNEFNIiwiZXJyb3JlZCI6MCwiZXhjbHVkZWRfc2VnbWVudHMiOltdLCJmYWlsZWQiOjAsImZpcmVmb3hfaWNvbiI6IiIsImhlYWRpbmdzIjp7ImVuIjoiQ2lhbyAyIn0sImlkIjoiOTljMmE5ODQtNTczMy00MGViLWIwYjYtY2I2MTVlYjI0YmE5IiwiaW5jbHVkZV9wbGF5ZXJfaWRzIjpudWxsLCJpbmNsdWRlZF9zZWdtZW50cyI6WyJBbGwiXSwiaW9zX2JhZGdlQ291bnQiOjEsImlvc19iYWRnZVR5cGUiOiJOb25lIiwiaW9zX2NhdGVnb3J5IjoiIiwiaW9zX3NvdW5kIjoiIiwiYXBuc19hbGVydCI6e30sImlzQWRtIjpmYWxzZSwiaXNBbmRyb2lkIjpmYWxzZSwiaXNDaHJvbWUiOmZhbHNlLCJpc0Nocm9tZVdlYiI6ZmFsc2UsImlzQWxleGEiOmZhbHNlLCJpc0ZpcmVmb3giOmZhbHNlLCJpc0lvcyI6dHJ1ZSwiaXNTYWZhcmkiOmZhbHNlLCJpc1dQIjpmYWxzZSwiaXNXUF9XTlMiOmZhbHNlLCJpc0VkZ2UiOmZhbHNlLCJsYXJnZV9pY29uIjoiIiwicHJpb3JpdHkiOjUsInF1ZXVlZF9hdCI6MTUzMDE3NzkwNSwicmVtYWluaW5nIjowLCJzZW5kX2FmdGVyIjoxNTMwMTc3OTA1LCJjb21wbGV0ZWRfYXQiOjE1MzAxNzc5MDYsInNtYWxsX2ljb24iOiIiLCJzdWNjZXNzZnVsIjoxLCJ0YWdzIjpudWxsLCJmaWx0ZXJzIjpudWxsLCJ0ZW1wbGF0ZV9pZCI6bnVsbCwidHRsIjpudWxsLCJ1cmwiOiIiLCJ3ZWJfYnV0dG9ucyI6bnVsbCwid2ViX3B1c2hfdG9waWMiOm51bGwsIndwX3NvdW5kIjoiIiwid3Bfd25zX3NvdW5kIjoiIn0seyJhZG1fYmlnX3BpY3R1cmUiOiIiLCJhZG1fZ3JvdXAiOiIiLCJhZG1fZ3JvdXBfbWVzc2FnZSI6eyJlbiI6IiJ9LCJhZG1fbGFyZ2VfaWNvbiI6IiIsImFkbV9zbWFsbF9pY29uIjoiIiwiYWRtX3NvdW5kIjoiIiwic3Bva2VuX3RleHQiOnt9LCJhbGV4YV9zc21sIjpudWxsLCJhbGV4YV9kaXNwbGF5X3RpdGxlIjpudWxsLCJhbWF6b25fYmFja2dyb3VuZF9kYXRhIjpmYWxzZSwiYW5kcm9pZF9hY2NlbnRfY29sb3IiOiIiLCJhbmRyb2lkX2dyb3VwIjoiIiwiYW5kcm9pZF9ncm91cF9tZXNzYWdlIjp7ImVuIjoiIn0sImFuZHJvaWRfbGVkX2NvbG9yIjoiIiwiYW5kcm9pZF9zb3VuZCI6IiIsImFuZHJvaWRfdmlzaWJpbGl0eSI6MSwiYXBwX2lkIjoiMjJiYzZkZWMtNTE1MC00ZDZkLTg2MjgtMzc3MjU5ZDJkZDE0IiwiYmlnX3BpY3R1cmUiOiIiLCJidXR0b25zIjpudWxsLCJjYW5jZWxlZCI6ZmFsc2UsImNocm9tZV9iaWdfcGljdHVyZSI6IiIsImNocm9tZV9pY29uIjoiIiwiY2hyb21lX3dlYl9pY29uIjoiIiwiY2hyb21lX3dlYl9pbWFnZSI6IiIsImNocm9tZV93ZWJfYmFkZ2UiOiIiLCJjb250ZW50X2F2YWlsYWJsZSI6ZmFsc2UsImNvbnRlbnRzIjp7ImVuIjoiU2dyaWduaWduw6AifSwiY29udmVydGVkIjoxLCJkYXRhIjpudWxsLCJkZWxheWVkX29wdGlvbiI6ImltbWVkaWF0ZSIsImRlbGl2ZXJ5X3RpbWVfb2ZfZGF5IjoiMTE6MjNBTSIsImVycm9yZWQiOjAsImV4Y2x1ZGVkX3NlZ21lbnRzIjpbXSwiZmFpbGVkIjowLCJmaXJlZm94X2ljb24iOiIiLCJoZWFkaW5ncyI6eyJlbiI6IkNpYW8ifSwiaWQiOiJjOGQ1YTkzYi1jZDU4LTQ0MzktOTk2Ni1hZTc3YWNmMTE3MGQiLCJpbmNsdWRlX3BsYXllcl9pZHMiOm51bGwsImluY2x1ZGVkX3NlZ21lbnRzIjpbIkFjdGl2ZSBVc2VycyJdLCJpb3NfYmFkZ2VDb3VudCI6MSwiaW9zX2JhZGdlVHlwZSI6Ik5vbmUiLCJpb3NfY2F0ZWdvcnkiOiIiLCJpb3Nfc291bmQiOiIiLCJhcG5zX2FsZXJ0Ijp7fSwiaXNBZG0iOmZhbHNlLCJpc0FuZHJvaWQiOmZhbHNlLCJpc0Nocm9tZSI6ZmFsc2UsImlzQ2hyb21lV2ViIjpmYWxzZSwiaXNBbGV4YSI6ZmFsc2UsImlzRmlyZWZveCI6ZmFsc2UsImlzSW9zIjp0cnVlLCJpc1NhZmFyaSI6ZmFsc2UsImlzV1AiOmZhbHNlLCJpc1dQX1dOUyI6ZmFsc2UsImlzRWRnZSI6ZmFsc2UsImxhcmdlX2ljb24iOiIiLCJwcmlvcml0eSI6NSwicXVldWVkX2F0IjoxNTMwMTc3ODc3LCJyZW1haW5pbmciOjAsInNlbmRfYWZ0ZXIiOjE1MzAxNzc4NzcsImNvbXBsZXRlZF9hdCI6MTUzMDE3Nzg3OCwic21hbGxfaWNvbiI6IiIsInN1Y2Nlc3NmdWwiOjEsInRhZ3MiOm51bGwsImZpbHRlcnMiOm51bGwsInRlbXBsYXRlX2lkIjpudWxsLCJ0dGwiOm51bGwsInVybCI6IiIsIndlYl9idXR0b25zIjpudWxsLCJ3ZWJfcHVzaF90b3BpYyI6bnVsbCwid3Bfc291bmQiOiIiLCJ3cF93bnNfc291bmQiOiIifSx7ImFkbV9iaWdfcGljdHVyZSI6bnVsbCwiYWRtX2dyb3VwIjpudWxsLCJhZG1fZ3JvdXBfbWVzc2FnZSI6bnVsbCwiYWRtX2xhcmdlX2ljb24iOm51bGwsImFkbV9zbWFsbF9pY29uIjpudWxsLCJhZG1fc291bmQiOm51bGwsInNwb2tlbl90ZXh0IjpudWxsLCJhbGV4YV9zc21sIjpudWxsLCJhbGV4YV9kaXNwbGF5X3RpdGxlIjpudWxsLCJhbWF6b25fYmFja2dyb3VuZF9kYXRhIjpudWxsLCJhbmRyb2lkX2FjY2VudF9jb2xvciI6bnVsbCwiYW5kcm9pZF9ncm91cCI6bnVsbCwiYW5kcm9pZF9ncm91cF9tZXNzYWdlIjpudWxsLCJhbmRyb2lkX2xlZF9jb2xvciI6bnVsbCwiYW5kcm9pZF9zb3VuZCI6bnVsbCwiYW5kcm9pZF92aXNpYmlsaXR5IjpudWxsLCJhcHBfaWQiOiIyMmJjNmRlYy01MTUwLTRkNmQtODYyOC0zNzcyNTlkMmRkMTQiLCJiaWdfcGljdHVyZSI6bnVsbCwiYnV0dG9ucyI6bnVsbCwiY2FuY2VsZWQiOmZhbHNlLCJjaHJvbWVfYmlnX3BpY3R1cmUiOm51bGwsImNocm9tZV9pY29uIjpudWxsLCJjaHJvbWVfd2ViX2ljb24iOm51bGwsImNocm9tZV93ZWJfaW1hZ2UiOm51bGwsImNocm9tZV93ZWJfYmFkZ2UiOm51bGwsImNvbnRlbnRfYXZhaWxhYmxlIjpudWxsLCJjb250ZW50cyI6e30sImNvbnZlcnRlZCI6MCwiZGF0YSI6bnVsbCwiZGVsYXllZF9vcHRpb24iOiJpbW1lZGlhdGUiLCJkZWxpdmVyeV90aW1lX29mX2RheSI6IjU6MTJQTSIsImVycm9yZWQiOjEsImV4Y2x1ZGVkX3NlZ21lbnRzIjpbXSwiZmFpbGVkIjowLCJmaXJlZm94X2ljb24iOm51bGwsImhlYWRpbmdzIjp7fSwiaWQiOiJiNDVjZTE5Ny1hNzliLTRlMzYtOTkyMy01NGE5MjU5YzE0NWIiLCJpbmNsdWRlX3BsYXllcl9pZHMiOm51bGwsImluY2x1ZGVkX3NlZ21lbnRzIjpbIlRlc3QgVXNlcnMiXSwiaW9zX2JhZGdlQ291bnQiOm51bGwsImlvc19iYWRnZVR5cGUiOm51bGwsImlvc19jYXRlZ29yeSI6bnVsbCwiaW9zX3NvdW5kIjpudWxsLCJhcG5zX2FsZXJ0Ijp7fSwiaXNBZG0iOm51bGwsImlzQW5kcm9pZCI6bnVsbCwiaXNDaHJvbWUiOm51bGwsImlzQ2hyb21lV2ViIjpudWxsLCJpc0FsZXhhIjpudWxsLCJpc0ZpcmVmb3giOm51bGwsImlzSW9zIjpudWxsLCJpc1NhZmFyaSI6bnVsbCwiaXNXUCI6bnVsbCwiaXNXUF9XTlMiOm51bGwsImlzRWRnZSI6bnVsbCwibGFyZ2VfaWNvbiI6bnVsbCwicHJpb3JpdHkiOm51bGwsInF1ZXVlZF9hdCI6MTUzMDExMjQ2MSwicmVtYWluaW5nIjowLCJzZW5kX2FmdGVyIjoxNTMwMTEyNDYxLCJjb21wbGV0ZWRfYXQiOjE1MzAxMTI0NjMsInNtYWxsX2ljb24iOm51bGwsInN1Y2Nlc3NmdWwiOjAsInRhZ3MiOm51bGwsImZpbHRlcnMiOm51bGwsInRlbXBsYXRlX2lkIjpudWxsLCJ0dGwiOm51bGwsInVybCI6bnVsbCwid2ViX2J1dHRvbnMiOm51bGwsIndlYl9wdXNoX3RvcGljIjpudWxsLCJ3cF9zb3VuZCI6bnVsbCwid3Bfd25zX3NvdW5kIjpudWxsfV19
74
+ http_version:
75
+ recorded_at: Thu, 28 Jun 2018 15:30:58 GMT
76
+ recorded_with: VCR 4.0.0