camara 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (49) hide show
  1. checksums.yaml +7 -0
  2. data/.coveralls.yml +1 -0
  3. data/.gitignore +22 -0
  4. data/.travis.yml +14 -0
  5. data/Gemfile +4 -0
  6. data/Guardfile +12 -0
  7. data/LICENSE.txt +22 -0
  8. data/README.md +37 -0
  9. data/Rakefile +24 -0
  10. data/camara.gemspec +34 -0
  11. data/lib/camara.rb +42 -0
  12. data/lib/camara/connection.rb +17 -0
  13. data/lib/camara/deputados/bancada.rb +4 -0
  14. data/lib/camara/deputados/bloco.rb +5 -0
  15. data/lib/camara/deputados/cargo_comissao.rb +4 -0
  16. data/lib/camara/deputados/client.rb +37 -0
  17. data/lib/camara/deputados/comissao.rb +4 -0
  18. data/lib/camara/deputados/deputado.rb +12 -0
  19. data/lib/camara/deputados/filiacao_partidaria.rb +5 -0
  20. data/lib/camara/deputados/gabinete.rb +4 -0
  21. data/lib/camara/deputados/partido.rb +5 -0
  22. data/lib/camara/deputados/periodo_exercicio.rb +5 -0
  23. data/lib/camara/initialize.rb +8 -0
  24. data/lib/camara/orgaos/client.rb +7 -0
  25. data/lib/camara/orgaos/orgao.rb +3 -0
  26. data/lib/camara/version.rb +3 -0
  27. data/lib/camara/xml_fields.rb +110 -0
  28. data/spec/camara/deputados/bancada_spec.rb +10 -0
  29. data/spec/camara/deputados/bloco_spec.rb +8 -0
  30. data/spec/camara/deputados/cargo_comissao_spec.rb +9 -0
  31. data/spec/camara/deputados/client_spec.rb +101 -0
  32. data/spec/camara/deputados/comissao_spec.rb +9 -0
  33. data/spec/camara/deputados/deputado_spec.rb +18 -0
  34. data/spec/camara/deputados/filiacao_partidaria_spec.rb +9 -0
  35. data/spec/camara/deputados/gabinete_spec.rb +8 -0
  36. data/spec/camara/deputados/partido_spec.rb +9 -0
  37. data/spec/camara/deputados/periodo_exercicio_spec.rb +9 -0
  38. data/spec/camara/orgaos/client_spec.rb +12 -0
  39. data/spec/camara/xml_fields_spec.rb +52 -0
  40. data/spec/cassettes/camara/deputados/obter_deputado_178387.yml +96 -0
  41. data/spec/cassettes/camara/deputados/obter_deputado_9999.yml +47 -0
  42. data/spec/cassettes/camara/deputados/obter_deputados.yml +45 -0
  43. data/spec/cassettes/camara/deputados/obter_lideres_bancadas.yml +45 -0
  44. data/spec/cassettes/camara/deputados/obter_partidos_bloco_cd.yml +687 -0
  45. data/spec/cassettes/camara/deputados/obter_partidos_cd.yml +547 -0
  46. data/spec/cassettes/camara/orgaos/listar_tipos_orgaos.yml +101 -0
  47. data/spec/spec_helper.rb +16 -0
  48. data/spec/support/xml_fields_matchers.rb +21 -0
  49. metadata +294 -0
@@ -0,0 +1,10 @@
1
+ require 'spec_helper'
2
+
3
+ describe Camara::Deputados::Bancada do
4
+ it 'has fields' do
5
+ bancada = Camara::Deputados::Bancada.new(Nokogiri::XML(''))
6
+ expect(bancada).to have_fields :sigla, :nome
7
+ expect(bancada).to have_field :lider, as_class: Camara::Deputados::Deputado
8
+ expect(bancada).to have_field :vice_lideres, as_class: [Camara::Deputados::Deputado]
9
+ end
10
+ end
@@ -0,0 +1,8 @@
1
+ require 'spec_helper'
2
+
3
+ describe Camara::Deputados::Bloco do
4
+ it 'has fields' do
5
+ bloco = Camara::Deputados::Bloco.new(Nokogiri::XML(''))
6
+ expect(bloco).to have_fields :idBloco, :nomeBloco, :siglaBloco, :dataCriacaoBloco, :dataExtincaoBloco
7
+ end
8
+ end
@@ -0,0 +1,9 @@
1
+ require 'spec_helper'
2
+
3
+ describe Camara::Deputados::CargoComissao do
4
+ it 'has fields' do
5
+ cargo_comissao = Camara::Deputados::CargoComissao.new(Nokogiri::XML(''))
6
+ expect(cargo_comissao).to have_fields :idOrgaoLegislativoCD, :siglaComissao, :nomeComissao, :idCargo, :nomeCargo,
7
+ :dataEntrada, :dataSaida
8
+ end
9
+ end
@@ -0,0 +1,101 @@
1
+ require 'spec_helper'
2
+
3
+ describe Camara::Deputados::Client do
4
+ it "#obter_deputados" do
5
+ xml_element = double 'XML'
6
+ allow(Nokogiri).to receive(:XML).and_return(double(css: [xml_element]))
7
+ expect(Camara::Deputados::Deputado).to receive(:new).with(xml_element)
8
+ deputados = VCR.use_cassette('camara/deputados/obter_deputados') do
9
+ Camara::Deputados.obter_deputados
10
+ end
11
+ end
12
+
13
+ describe "#obter_detalhes_deputado" do
14
+ it "#obter_detalhes_deputado" do
15
+ xml_element = double 'XML'
16
+ allow(Nokogiri).to receive(:XML).and_return(double(at_css: xml_element))
17
+ expect(Camara::Deputados::Deputado).to receive(:new).with(xml_element)
18
+ deputado = VCR.use_cassette('camara/deputados/obter_deputado_178387') do
19
+ Camara::Deputados.obter_detalhes_deputado('178387')
20
+ end
21
+ end
22
+
23
+ it 'returns nil if the id is invalid' do
24
+ deputado = VCR.use_cassette('camara/deputados/obter_deputado_9999') do
25
+ Camara::Deputados.obter_detalhes_deputado('9999')
26
+ end
27
+
28
+ expect(deputado).to be_nil
29
+ end
30
+ end
31
+
32
+ describe '#obter_partidos_cd' do
33
+ it "retorna um array de Partidos" do
34
+ xml_element = double 'XML'
35
+ allow(Nokogiri).to receive(:XML).and_return(double(css: [xml_element]))
36
+ expect(Camara::Deputados::Partido).to receive(:new).with(xml_element)
37
+ deputado = VCR.use_cassette('camara/deputados/obter_partidos_cd') do
38
+ Camara::Deputados.obter_partidos_cd
39
+ end
40
+ end
41
+
42
+ it "does something" do
43
+ partidos = VCR.use_cassette('camara/deputados/obter_partidos_cd') do
44
+ Camara::Deputados.obter_partidos_cd
45
+ end
46
+ partido = partidos.first
47
+
48
+ expect(partidos).not_to be_empty
49
+ expect(partido).to be_an_instance_of(Camara::Deputados::Partido)
50
+ expect(partido.sigla_partido).to eq('PEN')
51
+ expect(partido.id_partido).to eq('PEN')
52
+ expect(partido.nome_partido).to eq('Partido Ecológico Nacional')
53
+ expect(partido.data_criacao).to be_nil
54
+ expect(partido.data_extincao).to be_nil
55
+ end
56
+ end
57
+
58
+ describe '#obter_lideres_bancadas' do
59
+ it 'retorna as bancadas e seus líderes' do
60
+ bancadas = VCR.use_cassette('camara/deputados/obter_lideres_bancadas') do
61
+ Camara::Deputados.obter_lideres_bancadas
62
+ end
63
+ bancada = bancadas.first
64
+
65
+ expect(bancadas).not_to be_empty
66
+ expect(bancada).to be_an_instance_of(Camara::Deputados::Bancada)
67
+ expect(bancada.sigla).to eq('PT')
68
+ expect(bancada.nome).to eq('Partido dos Trabalhadores')
69
+ expect(bancada.lider).to be_an_instance_of(Camara::Deputados::Deputado)
70
+ expect(bancada.lider.nome).to eq('VICENTINHO')
71
+ expect(bancada.vice_lideres).not_to be_empty
72
+ expect(bancada.vice_lideres.first).to be_an_instance_of(Camara::Deputados::Deputado)
73
+ expect(bancada.vice_lideres.first.nome).to eq('ALESSANDRO MOLON')
74
+ end
75
+ end
76
+
77
+ describe '#obter_partidos_bloco_cd' do
78
+ it 'retorna os blocos de partidos' do
79
+ blocos = VCR.use_cassette('camara/deputados/obter_partidos_bloco_cd') do
80
+ Camara::Deputados.obter_partidos_bloco_cd
81
+ end
82
+ bloco = blocos.first
83
+ partido = bloco.partidos.first
84
+
85
+ expect(blocos).not_to be_empty
86
+ expect(bloco).to be_an_instance_of(Camara::Deputados::Bloco)
87
+ expect(bloco.id_bloco).to eq('10')
88
+ expect(bloco.nome_bloco).to eq('PV, PPS')
89
+ expect(bloco.sigla_bloco).to eq('PV, PPS')
90
+ expect(bloco.data_criacao_bloco).to eq('01/02/2011')
91
+ expect(bloco.data_extincao_bloco).to eq('01/02/2013')
92
+ expect(bloco.partidos).not_to be_empty
93
+ expect(partido).to be_an_instance_of(Camara::Deputados::Partido)
94
+ expect(partido.id_partido).to eq('PPS')
95
+ expect(partido.nome_partido).to eq('Partido Popular Socialista')
96
+ expect(partido.sigla_partido).to eq('PPS')
97
+ expect(partido.data_adesao_partido).to be_nil
98
+ expect(partido.data_desligamento_partido).to be_nil
99
+ end
100
+ end
101
+ end
@@ -0,0 +1,9 @@
1
+ require 'spec_helper'
2
+
3
+ describe Camara::Deputados::Comissao do
4
+ it 'has fields' do
5
+ comissao = Camara::Deputados::Comissao.new(Nokogiri::XML(''))
6
+ expect(comissao).to have_fields :idOrgaoLegislativoCD, :siglaComissao, :nomeComissao, :condicaoMembro, :dataEntrada,
7
+ :dataSaida
8
+ end
9
+ end
@@ -0,0 +1,18 @@
1
+ require 'spec_helper'
2
+
3
+ describe Camara::Deputados::Deputado do
4
+ it 'has fields' do
5
+ deputado = Camara::Deputados::Deputado.new(Nokogiri::XML(''))
6
+ expect(deputado).to have_fields :email, :nomeProfissao, :dataNascimento, :dataFalecimento, :ufRepresentacaoAtual,
7
+ :situacaoNaLegislaturaAtual, :ideCadastro, :idParlamentarDeprecated, :nomeParlamentarAtual, :nomeCivil, :sexo,
8
+ :historicoNomeParlamentar, :historicoLider, :condicao, :matricula, :idParlamentar, :nome, :nomeParlamentar,
9
+ :urlFoto, :uf, :partido, :anexo, :fone, :numLegislatura
10
+
11
+ expect(deputado).to have_field :partidoAtual, as_class: Camara::Deputados::Partido
12
+ expect(deputado).to have_field :gabinete, as_class: Camara::Deputados::Gabinete
13
+ expect(deputado).to have_field :comissoes, as_class: [Camara::Deputados::Comissao]
14
+ expect(deputado).to have_field :periodosExercicio, as_class: [Camara::Deputados::PeriodoExercicio]
15
+ expect(deputado).to have_field :cargosComissoes, as_class: [Camara::Deputados::CargoComissao]
16
+ expect(deputado).to have_field :filiacoesPartidarias, as_class: [Camara::Deputados::FiliacaoPartidaria]
17
+ end
18
+ end
@@ -0,0 +1,9 @@
1
+ require 'spec_helper'
2
+
3
+ describe Camara::Deputados::FiliacaoPartidaria do
4
+ it 'has fields' do
5
+ filiacao_partidaria = Camara::Deputados::FiliacaoPartidaria.new(Nokogiri::XML(''))
6
+ expect(filiacao_partidaria).to have_fields :idPartidoAnterior, :siglaPartidoAnterior, :nomePartidoAnterior,
7
+ :idPartidoPosterior, :siglaPartidoPosterior, :nomePartidoPosterior, :dataFiliacaoPartidoPosterior
8
+ end
9
+ end
@@ -0,0 +1,8 @@
1
+ require 'spec_helper'
2
+
3
+ describe Camara::Deputados::Gabinete do
4
+ it 'has fields' do
5
+ gabinete = Camara::Deputados::Gabinete.new(Nokogiri::XML(''))
6
+ expect(gabinete).to have_fields :numero, :anexo, :telefone
7
+ end
8
+ end
@@ -0,0 +1,9 @@
1
+ require 'spec_helper'
2
+
3
+ describe Camara::Deputados::Partido do
4
+ it 'has fields' do
5
+ partido = Camara::Deputados::Partido.new(Nokogiri::XML(''))
6
+ expect(partido).to have_fields :idPartido, :sigla, :nome, :siglaPartido, :nomePartido, :dataCriacao, :dataExtincao,
7
+ :data_adesao_partido, :data_desligamento_partido
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ require 'spec_helper'
2
+
3
+ describe Camara::Deputados::PeriodoExercicio do
4
+ it 'has fields' do
5
+ periodo_exercicio = Camara::Deputados::PeriodoExercicio.new(Nokogiri::XML(''))
6
+ expect(periodo_exercicio).to have_fields :siglaUFRepresentacao, :situacaoExercicio, :dataInicio, :dataFim,
7
+ :idCausaFimExercicio, :descricaoCausaFimExercicio, :idCadastroParlamentarAnterior
8
+ end
9
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+
3
+ describe Camara::Orgaos::Client do
4
+ it '#listar_tipos_orgaos' do
5
+ list = VCR.use_cassette('camara/orgaos/listar_tipos_orgaos') do
6
+ Camara::Orgaos.listar_tipos_orgaos
7
+ end
8
+
9
+ expect(list[0..37]).to eq("<?xml version=\"1.0\" encoding=\"utf-8\"?>")
10
+ expect(list[56..99]).to eq("<tipoOrgao id=\"81000\" descricao=\"Bancada\" />")
11
+ end
12
+ end
@@ -0,0 +1,52 @@
1
+ require 'spec_helper'
2
+
3
+ class Address
4
+ include Camara::XmlFields
5
+ fields :street, :number
6
+ end
7
+
8
+ class Hobby
9
+ include Camara::XmlFields
10
+ fields :name
11
+ end
12
+
13
+ class Person
14
+ include Camara::XmlFields
15
+ fields :name, :phone, addressData: Address, hobbies: [Hobby]
16
+ end
17
+
18
+ describe Camara::XmlFields do
19
+ it 'guarda os "fields"' do
20
+ expect(Person.instance_variable_get('@xml_fields')).to eq([:name, :phone, { addressData: Address, hobbies: [Hobby] }])
21
+ expect(Person.new(Nokogiri::XML('')).fields).to eq([:name, :phone, { addressData: Address, hobbies: [Hobby] }])
22
+ end
23
+
24
+ it 'parseia o xml e armazena os campos designados' do
25
+ xml = Nokogiri::XML('<name>Dimas Cyriaco</name>')
26
+ person = Person.new xml
27
+ expect(person.name).to eq('Dimas Cyriaco')
28
+ expect(person.phone).to be_nil
29
+ end
30
+
31
+ it 'parseia objetos aninhados' do
32
+ xml = Nokogiri::XML('<addressData><street>Blah</street><number>999</number></address>')
33
+ person = Person.new xml
34
+ expect(person.address_data).to be_an_instance_of(Address)
35
+ expect(person.address_data.street).to eq('Blah')
36
+ expect(person.address_data.number).to eq('999')
37
+ end
38
+
39
+ it 'aceita array' do
40
+ xml = Nokogiri::XML('<hobbies><hobby>Football</hobby><hobby>Video Games</hobby></hobbies>')
41
+ person = Person.new xml
42
+ expect(person.hobbies).not_to be_empty
43
+ expect(person.hobbies).to have(2).items
44
+ expect(person.hobbies.first).to be_an_instance_of(Hobby)
45
+ end
46
+
47
+ it 'funciona com attributos' do
48
+ xml = Nokogiri::XML('<hobby name="Football"></hobby>')
49
+ hobby = Hobby.new xml
50
+ expect(hobby.name).to eq('Football')
51
+ end
52
+ end
@@ -0,0 +1,96 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://www.camara.gov.br/SitCamaraWS/Deputados.asmx/ObterDetalhesDeputado?ideCadastro=178387&numLegislatura=
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.0
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - '*/*'
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Date:
22
+ - Wed, 29 Oct 2014 17:48:13 GMT
23
+ Server:
24
+ - Microsoft-IIS/6.0
25
+ X-Powered-By:
26
+ - ASP.NET
27
+ X-Aspnet-Version:
28
+ - 1.1.4322
29
+ Cache-Control:
30
+ - private, max-age=0
31
+ Content-Type:
32
+ - text/xml; charset=utf-8
33
+ Content-Length:
34
+ - '2336'
35
+ Set-Cookie:
36
+ - BALANCEID=mycluster.node2; path=/;
37
+ Vary:
38
+ - User-Agent
39
+ body:
40
+ encoding: ASCII-8BIT
41
+ string: !binary |-
42
+ PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjxEZXB1
43
+ dGFkb3M+DQogIDxEZXB1dGFkbz4NCiAgICA8bnVtTGVnaXNsYXR1cmE+NTQ8
44
+ L251bUxlZ2lzbGF0dXJhPg0KICAgIDxlbWFpbD5kZXAuZnJhbmNpc2NvZGVh
45
+ c3Npc0BjYW1hcmEuZ292LmJyPC9lbWFpbD4NCiAgICA8bm9tZVByb2Zpc3Nh
46
+ bz4NCiAgICA8L25vbWVQcm9maXNzYW8+DQogICAgPGRhdGFOYXNjaW1lbnRv
47
+ PjA4LzA5LzE5NjI8L2RhdGFOYXNjaW1lbnRvPg0KICAgIDxkYXRhRmFsZWNp
48
+ bWVudG8+DQogICAgPC9kYXRhRmFsZWNpbWVudG8+DQogICAgPHVmUmVwcmVz
49
+ ZW50YWNhb0F0dWFsPlNDPC91ZlJlcHJlc2VudGFjYW9BdHVhbD4NCiAgICA8
50
+ c2l0dWFjYW9OYUxlZ2lzbGF0dXJhQXR1YWw+RW0gRXhlcmPDrWNpbzwvc2l0
51
+ dWFjYW9OYUxlZ2lzbGF0dXJhQXR1YWw+DQogICAgPGlkZUNhZGFzdHJvPjE3
52
+ ODM4NzwvaWRlQ2FkYXN0cm8+DQogICAgPGlkUGFybGFtZW50YXJEZXByZWNh
53
+ dGVkPjEwMjc3PC9pZFBhcmxhbWVudGFyRGVwcmVjYXRlZD4NCiAgICA8bm9t
54
+ ZVBhcmxhbWVudGFyQXR1YWw+RlJBTkNJU0NPIERFIEFTU0lTPC9ub21lUGFy
55
+ bGFtZW50YXJBdHVhbD4NCiAgICA8bm9tZUNpdmlsPkZSQU5DSVNDTyBERSBB
56
+ U1NJUyBOVU5FUzwvbm9tZUNpdmlsPg0KICAgIDxzZXhvPk08L3NleG8+DQog
57
+ ICAgPHBhcnRpZG9BdHVhbD4NCiAgICAgIDxpZFBhcnRpZG8+UFQ8L2lkUGFy
58
+ dGlkbz4NCiAgICAgIDxzaWdsYT5QVDwvc2lnbGE+DQogICAgICA8bm9tZT5Q
59
+ YXJ0aWRvIGRvcyBUcmFiYWxoYWRvcmVzPC9ub21lPg0KICAgIDwvcGFydGlk
60
+ b0F0dWFsPg0KICAgIDxnYWJpbmV0ZT4NCiAgICAgIDxudW1lcm8+MjI5PC9u
61
+ dW1lcm8+DQogICAgICA8YW5leG8+NDwvYW5leG8+DQogICAgICA8dGVsZWZv
62
+ bmU+MzIxNS01MjI5PC90ZWxlZm9uZT4NCiAgICA8L2dhYmluZXRlPg0KICAg
63
+ IDxjb21pc3NvZXM+DQogICAgICA8Y29taXNzYW8+DQogICAgICAgIDxpZE9y
64
+ Z2FvTGVnaXNsYXRpdm9DRD4yMDEwPC9pZE9yZ2FvTGVnaXNsYXRpdm9DRD4N
65
+ CiAgICAgICAgPHNpZ2xhQ29taXNzYW8+Q0ZUPC9zaWdsYUNvbWlzc2FvPg0K
66
+ ICAgICAgICA8bm9tZUNvbWlzc2FvPkNvbWlzc8OjbyBkZSBGaW5hbsOnYXMg
67
+ ZSBUcmlidXRhw6fDo288L25vbWVDb21pc3Nhbz4NCiAgICAgICAgPGNvbmRp
68
+ Y2FvTWVtYnJvPlN1cGxlbnRlPC9jb25kaWNhb01lbWJybz4NCiAgICAgICAg
69
+ PGRhdGFFbnRyYWRhPjAzLzA5LzIwMTQ8L2RhdGFFbnRyYWRhPg0KICAgICAg
70
+ ICA8ZGF0YVNhaWRhPg0KICAgICAgICA8L2RhdGFTYWlkYT4NCiAgICAgIDwv
71
+ Y29taXNzYW8+DQogICAgICA8Y29taXNzYW8+DQogICAgICAgIDxpZE9yZ2Fv
72
+ TGVnaXNsYXRpdm9DRD4yMDA5PC9pZE9yZ2FvTGVnaXNsYXRpdm9DRD4NCiAg
73
+ ICAgICAgPHNpZ2xhQ29taXNzYW8+Q0U8L3NpZ2xhQ29taXNzYW8+DQogICAg
74
+ ICAgIDxub21lQ29taXNzYW8+Q29taXNzw6NvIGRlIEVkdWNhw6fDo288L25v
75
+ bWVDb21pc3Nhbz4NCiAgICAgICAgPGNvbmRpY2FvTWVtYnJvPlRpdHVsYXI8
76
+ L2NvbmRpY2FvTWVtYnJvPg0KICAgICAgICA8ZGF0YUVudHJhZGE+MDMvMDkv
77
+ MjAxNDwvZGF0YUVudHJhZGE+DQogICAgICAgIDxkYXRhU2FpZGE+DQogICAg
78
+ ICAgIDwvZGF0YVNhaWRhPg0KICAgICAgPC9jb21pc3Nhbz4NCiAgICA8L2Nv
79
+ bWlzc29lcz4NCiAgICA8Y2FyZ29zQ29taXNzb2VzIC8+DQogICAgPHBlcmlv
80
+ ZG9zRXhlcmNpY2lvPg0KICAgICAgPHBlcmlvZG9FeGVyY2ljaW8+DQogICAg
81
+ ICAgIDxzaWdsYVVGUmVwcmVzZW50YWNhbz5TQzwvc2lnbGFVRlJlcHJlc2Vu
82
+ dGFjYW8+DQogICAgICAgIDxzaXR1YWNhb0V4ZXJjaWNpbz5TdXBsZW50ZTwv
83
+ c2l0dWFjYW9FeGVyY2ljaW8+DQogICAgICAgIDxkYXRhSW5pY2lvPjIwLzA4
84
+ LzIwMTQ8L2RhdGFJbmljaW8+DQogICAgICAgIDxkYXRhRmltPg0KICAgICAg
85
+ ICA8L2RhdGFGaW0+DQogICAgICAgIDxpZENhdXNhRmltRXhlcmNpY2lvPg0K
86
+ ICAgICAgICA8L2lkQ2F1c2FGaW1FeGVyY2ljaW8+DQogICAgICAgIDxkZXNj
87
+ cmljYW9DYXVzYUZpbUV4ZXJjaWNpbz4NCiAgICAgICAgPC9kZXNjcmljYW9D
88
+ YXVzYUZpbUV4ZXJjaWNpbz4NCiAgICAgICAgPGlkQ2FkYXN0cm9QYXJsYW1l
89
+ bnRhckFudGVyaW9yPjE2MDYwNDwvaWRDYWRhc3Ryb1BhcmxhbWVudGFyQW50
90
+ ZXJpb3I+DQogICAgICA8L3BlcmlvZG9FeGVyY2ljaW8+DQogICAgPC9wZXJp
91
+ b2Rvc0V4ZXJjaWNpbz4NCiAgICA8aGlzdG9yaWNvTm9tZVBhcmxhbWVudGFy
92
+ IC8+DQogICAgPGZpbGlhY29lc1BhcnRpZGFyaWFzIC8+DQogICAgPGhpc3Rv
93
+ cmljb0xpZGVyIC8+DQogIDwvRGVwdXRhZG8+DQo8L0RlcHV0YWRvcz4=
94
+ http_version:
95
+ recorded_at: Wed, 29 Oct 2014 17:48:16 GMT
96
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,47 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://www.camara.gov.br/SitCamaraWS/Deputados.asmx/ObterDetalhesDeputado?ideCadastro=9999&numLegislatura=
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.0
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - '*/*'
16
+ response:
17
+ status:
18
+ code: 500
19
+ message: Internal Server Error.
20
+ headers:
21
+ Date:
22
+ - Sat, 01 Nov 2014 18:42:52 GMT
23
+ Server:
24
+ - Microsoft-IIS/6.0
25
+ X-Powered-By:
26
+ - ASP.NET
27
+ X-Aspnet-Version:
28
+ - 1.1.4322
29
+ Cache-Control:
30
+ - private
31
+ Content-Type:
32
+ - text/plain; charset=utf-8
33
+ Content-Length:
34
+ - '160'
35
+ Set-Cookie:
36
+ - BALANCEID=mycluster.node2; path=/;
37
+ Vary:
38
+ - User-Agent
39
+ Connection:
40
+ - close
41
+ body:
42
+ encoding: UTF-8
43
+ string: "Deputado n&#227;o encontrado. - CamaraWSSemComponente - at CamaraWSSemComponente.Deputados.ObterDetalhesDeputado(String
44
+ ideCadastro, String numLegislatura)\r\n"
45
+ http_version:
46
+ recorded_at: Sat, 01 Nov 2014 18:42:48 GMT
47
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,45 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://www.camara.gov.br/SitCamaraWS/Deputados.asmx/ObterDeputados
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Faraday v0.9.0
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - '*/*'
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Date:
22
+ - Thu, 30 Oct 2014 00:59:08 GMT
23
+ Server:
24
+ - Microsoft-IIS/6.0
25
+ X-Powered-By:
26
+ - ASP.NET
27
+ X-Aspnet-Version:
28
+ - 1.1.4322
29
+ Cache-Control:
30
+ - private, max-age=0
31
+ Content-Type:
32
+ - text/xml; charset=utf-8
33
+ Content-Length:
34
+ - '1618442'
35
+ Set-Cookie:
36
+ - BALANCEID=mycluster.node2; path=/;
37
+ Vary:
38
+ - User-Agent
39
+ body:
40
+ encoding: ASCII-8BIT
41
+ string: !binary |-
42
+ PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjxkZXB1dGFkb3M+DQogIDxkZXB1dGFkbz4NCiAgICA8aWRlQ2FkYXN0cm8+MTc4Mzg3PC9pZGVDYWRhc3Rybz4NCiAgICA8Y29uZGljYW8+U3VwbGVudGU8L2NvbmRpY2FvPg0KICAgIDxtYXRyaWN1bGE+NjUyPC9tYXRyaWN1bGE+DQogICAgPGlkUGFybGFtZW50YXI+NTgyOTIzOTwvaWRQYXJsYW1lbnRhcj4NCiAgICA8bm9tZT5GUkFOQ0lTQ08gREUgQVNTSVMgTlVORVM8L25vbWU+DQogICAgPG5vbWVQYXJsYW1lbnRhcj5GUkFOQ0lTQ08gREUgQVNTSVM8L25vbWVQYXJsYW1lbnRhcj4NCiAgICA8dXJsRm90bz5odHRwOi8vd3d3LmNhbWFyYS5nb3YuYnIvaW50ZXJuZXQvZGVwdXRhZG8vYmFuZGVwLzE3ODM4Ny5qcGc8L3VybEZvdG8+DQogICAgPHNleG8+bWFzY3VsaW5vPC9zZXhvPg0KICAgIDx1Zj5TQzwvdWY+DQogICAgPHBhcnRpZG8+UFQ8L3BhcnRpZG8+DQogICAgPGdhYmluZXRlPjIyOTwvZ2FiaW5ldGU+DQogICAgPGFuZXhvPjQ8L2FuZXhvPg0KICAgIDxmb25lPjMyMTUtNTIyOTwvZm9uZT4NCiAgICA8ZW1haWw+ZGVwLmZyYW5jaXNjb2RlYXNzaXNAY2FtYXJhLmdvdi5icjwvZW1haWw+DQogICAgPGNvbWlzc29lcz4NCiAgICAgIDx0aXR1bGFyIC8+DQogICAgICA8c3VwbGVudGUgLz4NCiAgICA8L2NvbWlzc29lcz4NCiAgPC9kZXB1dGFkbz4NCiAgPGRlcHV0YWRvPg0KICAgIDxpZGVDYWRhc3Rybz4xNjY0MDI8L2lkZUNhZGFzdHJvPg0KICAgIDxjb25kaWNhbz5TdXBsZW50ZTwvY29uZGljYW8+DQogICAgPG1hdHJpY3VsYT41NzU8L21hdHJpY3VsYT4NCiAgICA8aWRQYXJsYW1lbnRhcj41MzQwMDI8L2lkUGFybGFtZW50YXI+DQogICAgPG5vbWU+TUFHREEgTU9GQVRUTyBIT048L25vbWU+DQogICAgPG5vbWVQYXJsYW1lbnRhcj5NQUdEQSBNT0ZBVFRPPC9ub21lUGFybGFtZW50YXI+DQogICAgPHVybEZvdG8+aHR0cDovL3d3dy5jYW1hcmEuZ292LmJyL2ludGVybmV0L2RlcHV0YWRvL2JhbmRlcC8xNjY0MDIuanBnPC91cmxGb3RvPg0KICAgIDxzZXhvPmZlbWluaW5vPC9zZXhvPg0KICAgIDx1Zj5HTzwvdWY+DQogICAgPHBhcnRpZG8+UFI8L3BhcnRpZG8+DQogICAgPGdhYmluZXRlPjkzNDwvZ2FiaW5ldGU+DQogICAgPGFuZXhvPjQ8L2FuZXhvPg0KICAgIDxmb25lPjMyMTUtNTkzNDwvZm9uZT4NCiAgICA8ZW1haWw+ZGVwLm1hZ2RhbW9mYXR0b0BjYW1hcmEuZ292LmJyPC9lbWFpbD4NCiAgICA8Y29taXNzb2VzPg0KICAgICAgPHRpdHVsYXI+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gZGUgRGVzZW52b2x2aW1lbnRvIFVyYmFubyIgc2lnbGE9IkNEVSIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBkZSBUdXJpc21vIiBzaWdsYT0iQ1RVUiIgLz4NCiAgICAgIDwvdGl0dWxhcj4NCiAgICAgIDxzdXBsZW50ZT4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBkZSBBZ3JpY3VsdHVyYSwgUGVjdcOhcmlhLCBBYmFzdGVjaW1lbnRvIGUgRGVzZW52b2x2aW1lbnRvIFJ1cmFsIiBzaWdsYT0iQ0FQQURSIiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIGRlIE1pbmFzIGUgRW5lcmdpYSIgc2lnbGE9IkNNRSIgLz4NCiAgICAgIDwvc3VwbGVudGU+DQogICAgPC9jb21pc3NvZXM+DQogIDwvZGVwdXRhZG8+DQogIDxkZXB1dGFkbz4NCiAgICA8aWRlQ2FkYXN0cm8+MTY3NDkzPC9pZGVDYWRhc3Rybz4NCiAgICA8Y29uZGljYW8+VGl0dWxhcjwvY29uZGljYW8+DQogICAgPG1hdHJpY3VsYT41Nzk8L21hdHJpY3VsYT4NCiAgICA8aWRQYXJsYW1lbnRhcj41MzEwOTk8L2lkUGFybGFtZW50YXI+DQogICAgPG5vbWU+V0VWRVJUT04gUk9DSEEgTUFSUVVFUyBERSBTT1VTQTwvbm9tZT4NCiAgICA8bm9tZVBhcmxhbWVudGFyPldFVkVSVE9OIFJPQ0hBPC9ub21lUGFybGFtZW50YXI+DQogICAgPHVybEZvdG8+aHR0cDovL3d3dy5jYW1hcmEuZ292LmJyL2ludGVybmV0L2RlcHV0YWRvL2JhbmRlcC8xNjc0OTMuanBnPC91cmxGb3RvPg0KICAgIDxzZXhvPm1hc2N1bGlubzwvc2V4bz4NCiAgICA8dWY+TUE8L3VmPg0KICAgIDxwYXJ0aWRvPlBEVDwvcGFydGlkbz4NCiAgICA8Z2FiaW5ldGU+Mjg1PC9nYWJpbmV0ZT4NCiAgICA8YW5leG8+MzwvYW5leG8+DQogICAgPGZvbmU+MzIxNS01Mjg1PC9mb25lPg0KICAgIDxlbWFpbD5kZXAud2V2ZXJ0b25yb2NoYUBjYW1hcmEuZ292LmJyPC9lbWFpbD4NCiAgICA8Y29taXNzb2VzPg0KICAgICAgPHRpdHVsYXI+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gZGUgSW50ZWdyYcOnw6NvIE5hY2lvbmFsLCBEZXNlbnZvbHZpbWVudG8gUmVnaW9uYWwgZSBkYSBBbWF6w7RuaWEiIHNpZ2xhPSJDSU5EUkEiIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gZGUgTWVpbyBBbWJpZW50ZSBlIERlc2Vudm9sdmltZW50byBTdXN0ZW50w6F2ZWwiIHNpZ2xhPSJDTUFEUyIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkdydXBvIGRlIFRyYWJhbGhvIHBhcmEgYW7DoWxpc2UsIGVzdHVkbyBlIGZvcm11bGHDp8OjbyBkZSBwcm9wb3Npw6fDtWVzIHJlbGFjaW9uYWRhcyDDoCBSZWZvcm1hIGRhIExlZ2lzbGHDp8OjbyBUcmlidXTDoXJpYSBOYWNpb25hbCIgc2lnbGE9IkdUUkVGVFIiIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gRXNwZWNpYWwgZGVzdGluYWRhIGEgcHJvZmVyaXIgcGFyZWNlciBhbyBQcm9qZXRvIGRlIExlaSBuwrogNTMzNSwgZGUgMjAwOSwgZG8gU2VuYWRvIEZlZGVyYWwsIHF1ZSAmcXVvdDthbHRlcmEgYXMgTGVpcyBuwrogOS4wNzQsIGRlIDcgZGUganVsaG8gZGUgMTk5NSwgOS40MzMsIGRlIDggZGUgamFuZWlybyBkZSAxOTk3LCAgOS45ODQsIGRlIDE3IGRlIGp1bGhvIGRlIDIwMDAsIGUgMTAuMjMzLCBkZSA1IGRlIGp1bmhvIGRlIDIwMDEsIHBhcmEgdHJhdGFyIGRvcyBkaXNwb3NpdGl2b3MgZGUgdHJhbnNwb3Npw6fDo28gaGlkcm92acOhcmlhIGRlIG7DrXZlaXMmcXVvdDsiIHNpZ2xhPSJQTDUzMzUwOSIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBFc3BlY2lhbCBkZXN0aW5hZGEgYSBwcm9mZXJpciBwYXJlY2VyIGFvIFByb2pldG8gZGUgTGVpIG7CuiA1NjI3LCBkZSAyMDEzLCBkbyBQb2RlciBFeGVjdXRpdm8sIHF1ZSAmcXVvdDthbHRlcmEgbyBEZWNyZXRvLUxlaSBuwrogOS43NjAsIGRlIDUgZGUgc2V0ZW1icm8gZGUgMTk0NiwgbyBEZWNyZXRvLUxlaSBuwrogMi4zOTgsIGRlIDIxIGRlIGRlemVtYnJvIGRlIDE5ODcsIGEgTGVpIG7CuiA5LjYzNiwgZGUgMTUgZGUgbWFpbyBkZSAxOTk4LCBkaXNww7VlIHNvYnJlIG8gcGFyY2VsYW1lbnRvIGUgYSByZW1pc3PDo28gZGUgZMOtdmlkYXMgcGF0cmltb25pYWlzIGNvbSBhIFVuacOjbywgZSBkw6Egb3V0cmFzIHByb3ZpZMOqbmNpYXMmcXVvdDsiIHNpZ2xhPSJQTDU2MjcxMyIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBFc3BlY2lhbCBkZXN0aW5hZGEgYSBwcm9mZXJpciBwYXJlY2VyIGFvIFByb2pldG8gZGUgTGVpICBuwrogNTY5MiwgZGUgMjAxMywgZG8gU3IuIFPDqXJnaW8gWnZlaXRlciwgcXVlICZxdW90O2Rpc3DDtWUgc29icmUgbyBtb25vcMOzbGlvIGRhIFVuacOjbyBuYSBleHBsb3Jhw6fDo28gZGFzIHJpcXVlemFzIGRhIEFtYXrDtG5pYSwgY29tIGEgY3JpYcOnw6NvIGRvIENvbnNlbGhvIE5hY2lvbmFsIGRlIFBvbMOtdGljYSBkYSBBbWF6w7RuaWEgZSBkYSBBZ8OqbmNpYSBOYWNpb25hbCBkZSBFeHBsb3Jhw6fDo28gZG9zIFJlY3Vyc29zIE5hdHVyYWlzIGRhIEFtYXrDtG5pYSwgZ2FyYW50aW5kbyBhIHByb3Rlw6fDo28gYW8gbWVpbyBhbWJpZW50ZSBlIGEgc29iZXJhbmlhIG5hY2lvbmFsLCBlIGTDoSBvdXRyYXMgcHJvdmlkw6puY2lhcyZxdW90OyIgc2lnbGE9IlBMNTY5MjEzIiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIEVzcGVjaWFsIGRlc3RpbmFkYSBhIHByb2ZlcmlyIHBhcmVjZXIgYW8gUHJvamV0byBkZSBMZWkgbsK6IDYuODY5LCBkZSAyMDEwLCBkbyBTZW5hZG8gRmVkZXJhbCwgZSBhcGVuc2Fkb3MsIHF1ZSAmcXVvdDthY3Jlc2NlbnRhIG8gYXJ0LiAyNDItQSDDoCBMZWkgbsK6IDguMDY5LCBkZSAxMyBkZSBqdWxobyBkZSAxOTkwIChFc3RhdHV0byBkYSBDcmlhbsOnYSBlIGRvIEFkb2xlc2NlbnRlKSwgcGFyYSB0b3JuYXIgY3JpbWUgYSB2ZW5kYSBkZSBiZWJpZGFzIGFsY2/Ds2xpY2FzIGEgbWVub3JlcyBkZSAxOCAoZGV6b2l0bykgYW5vcywgZSBkw6Egb3V0cmFzIHByb3ZpZMOqbmNpYXMmcXVvdDsiIHNpZ2xhPSJQTDY4NjkxMCIgLz4NCiAgICAgIDwvdGl0dWxhcj4NCiAgICAgIDxzdXBsZW50ZT4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBkZSBDb25zdGl0dWnDp8OjbyBlIEp1c3Rpw6dhIGUgZGUgQ2lkYWRhbmlhIiBzaWdsYT0iQ0NKQyIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBkZSBEZXNlbnZvbHZpbWVudG8gVXJiYW5vIiBzaWdsYT0iQ0RVIiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIEVzcGVjaWFsIGRlc3RpbmFkYSBhIHByb2ZlcmlyIHBhcmVjZXIgYW8gUHJvamV0byBkZSBMZWkgbsK6IDM0NjAsIGRlIDIwMDQsIGRvIFNyLiBXYWx0ZXIgRmVsZG1hbiwgcXVlICZxdW90O2luc3RpdHVpIGRpcmV0cml6ZXMgcGFyYSBhIFBvbMOtdGljYSBOYWNpb25hbCBkZSBQbGFuZWphbWVudG8gUmVnaW9uYWwgVXJiYW5vLCBjcmlhIG8gU2lzdGVtYSBOYWNpb25hbCBkZSBQbGFuZWphbWVudG8gZSBJbmZvcm1hw6fDtWVzIFJlZ2lvbmFpcyBVcmJhbmFzIGUgZMOhIG91dHJhcyBwcm92aWTDqm5jaWFzJnF1b3Q7IChFc3RhdHV0byBkYSBNZXRyw7Nwb2xlKSIgc2lnbGE9IlBMMzQ2MDA0IiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIEVzcGVjaWFsIGRlc3RpbmFkYSBhIHByb2ZlcmlyIHBhcmVjZXIgYW8gUHJvamV0byBkZSBMZWkgbsK6IDc0MjAsIGRlIDIwMDYsIGRhIFNyYS4gUHJvZmVzc29yYSBSYXF1ZWwgVGVpeGVpcmEsIHF1ZSAmcXVvdDtkaXNww7VlIHNvYnJlIGEgcXVhbGlkYWRlIGRhIGVkdWNhw6fDo28gYsOhc2ljYSBlIGEgcmVzcG9uc2FiaWxpZGFkZSBkb3MgZ2VzdG9yZXMgcMO6YmxpY29zIG5hIHN1YSBwcm9tb8Onw6NvJnF1b3Q7IiBzaWdsYT0iUEw3NDIwMDYiIC8+DQogICAgICA8L3N1cGxlbnRlPg0KICAgIDwvY29taXNzb2VzPg0KICA8L2RlcHV0YWRvPg0KICA8ZGVwdXRhZG8+DQogICAgPGlkZUNhZGFzdHJvPjE2NzYxNzwvaWRlQ2FkYXN0cm8+DQogICAgPGNvbmRpY2FvPlRpdHVsYXI8L2NvbmRpY2FvPg0KICAgIDxtYXRyaWN1bGE+NTgxPC9tYXRyaWN1bGE+DQogICAgPGlkUGFybGFtZW50YXI+NTMzMjM4PC9pZFBhcmxhbWVudGFyPg0KICAgIDxub21lPlZBTkRFUkxFSSBTSVJBUVVFPC9ub21lPg0KICAgIDxub21lUGFybGFtZW50YXI+VkFOREVSTEVJIFNJUkFRVUU8L25vbWVQYXJsYW1lbnRhcj4NCiAgICA8dXJsRm90bz5odHRwOi8vd3d3LmNhbWFyYS5nb3YuYnIvaW50ZXJuZXQvZGVwdXRhZG8vYmFuZGVwLzE2NzYxNy5qcGc8L3VybEZvdG8+DQogICAgPHNleG8+bWFzY3VsaW5vPC9zZXhvPg0KICAgIDx1Zj5TUDwvdWY+DQogICAgPHBhcnRpZG8+UFQ8L3BhcnRpZG8+DQogICAgPGdhYmluZXRlPjU3NDwvZ2FiaW5ldGU+DQogICAgPGFuZXhvPjM8L2FuZXhvPg0KICAgIDxmb25lPjMyMTUtNTU3NDwvZm9uZT4NCiAgICA8ZW1haWw+ZGVwLnZhbmRlcmxlaXNpcmFxdWVAY2FtYXJhLmdvdi5icjwvZW1haWw+DQogICAgPGNvbWlzc29lcz4NCiAgICAgIDx0aXR1bGFyPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIEVzcGVjaWFsIGRlc3RpbmFkYSBhIGVmZXR1YXIgZXN0dWRvIGUgYXByZXNlbnRhciBwcm9wb3N0YXMgZW0gcmVsYcOnw6NvIMOgIFJlZm9ybWEgZG8gQ8OzZGlnbyBQZW5hbCIgc2lnbGE9IkNFUEVOQUwiIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gZGUgRmlzY2FsaXphw6fDo28gRmluYW5jZWlyYSBlIENvbnRyb2xlIiBzaWdsYT0iQ0ZGQyIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBFc3BlY2lhbCBkZXN0aW5hZGEgYSBwcm9mZXJpciBwYXJlY2VyIGFvIFByb2pldG8gZGUgTGVpIG7CuiAxNTcyLCBkZSAyMDExLCBkbyBTci4gVmljZW50ZSBDYW5kaWRvLCBxdWUgJnF1b3Q7aW5zdGl0dWkgbyBDw7NkaWdvIENvbWVyY2lhbCZxdW90OyIgc2lnbGE9IlBMMTU3MjExIiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIEVzcGVjaWFsIGRlc3RpbmFkYSBhIHByb2ZlcmlyIHBhcmVjZXIgYW8gUHJvamV0byBkZSBMZWkgbsK6IDYwMjUsIGRlIDIwMDUsIGFvIFByb2pldG8gZGUgTGVpIG7CuiA4MDQ2LCBkZSAyMDEwLCBhbWJvcyBkbyBTZW5hZG8gRmVkZXJhbCwgZSBvdXRyb3MsIHF1ZSB0cmF0YW0gZG8gJnF1b3Q7Q8OzZGlnbyBkZSBQcm9jZXNzbyBDaXZpbCZxdW90OyAocmV2b2dhbSBhIExlaSBuwrogNS44NjksIGRlIDE5NzMpIiBzaWdsYT0iUEw2MDI1MDUiIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gRXNwZWNpYWwgZGVzdGluYWRhIGEgcHJvZmVyaXIgcGFyZWNlciBhbyBQcm9qZXRvIGRlIExlaSBuwrogNzEwOCwgZGUgMjAxNCwgZG8gU2VuYWRvIEZlZGVyYWwsIHF1ZSAmcXVvdDthbHRlcmEgYSBMZWkgbsK6IDkuMzA3LCBkZSAyMyBkZSBzZXRlbWJybyBkZSAxOTk2LCBlIGEgTGVpIG7CuiA2LjQwNCwgZGUgMTUgZGUgZGV6ZW1icm8gZGUgMTk3NiwgcGFyYSBhbXBsaWFyIG8gIMOibWJpdG8gZGUgYXBsaWNhw6fDo28gZGEgYXJiaXRyYWdlbSBlIGRpc3BvciBzb2JyZSBhIGVzY29saGEgZG9zIMOhcmJpdHJvcyBxdWFuZG8gYXMgcGFydGVzIHJlY29ycmVtIGEgw7NyZ8OjbyBhcmJpdHJhbCwgYSBpbnRlcnJ1cMOnw6NvIGRhIHByZXNjcmnDp8OjbyBwZWxhIGluc3RpdHVpw6fDo28gZGEgYXJiaXRyYWdlbSwgYSBjb25jZXNzw6NvIGRlIHR1dGVsYXMgY2F1dGVsYXJlcyBlIGRlIHVyZ8OqbmNpYSBub3MgY2Fzb3MgZGUgYXJiaXRyYWdlbSwgYSBjYXJ0YSBhcmJpdHJhbCwgYSBzZW50ZW7Dp2EgYXJiaXRyYWwgZSBvIGluY2VudGl2byBhbyBlc3R1ZG8gZG8gaW5zdGl0dXRvIGRhIGFyYml0cmFnZW07IGUgcmV2b2dhIGRpc3Bvc2l0aXZvcyBkYSBMZWkgbsK6IDkuMzA3LCBkZSAyMyBkZSBzZXRlbWJybyBkZSAxOTk2JnF1b3Q7LiIgc2lnbGE9IlBMNzEwODE0IiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iU3ViY29taXNzw6NvIFBlcm1hbmVudGUgc29icmUgUGV0csOzbGVvLCBHw6FzIE5hdHVyYWwgZSBFdGFub2wuIiBzaWdsYT0iU1VCUEVUR0UiIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJTdWJjb21pc3PDo28gRXNwZWNpYWwgcGFyYSBBY29tcGFuaGFtZW50byBlIEZpc2NhbGl6YcOnw6NvIE9wZXJhY2lvbmFsIGRvcyBTZXJ2acOnb3MgZGUgVGVsZWZvbmlhIEZpeGEgZSBNw7N2ZWwgbm8gQnJhc2lsLiIgc2lnbGE9IlNVQlRFTEVGIiAvPg0KICAgICAgPC90aXR1bGFyPg0KICAgICAgPHN1cGxlbnRlPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIGRlIFJlbGHDp8O1ZXMgRXh0ZXJpb3JlcyBlIGRlIERlZmVzYSBOYWNpb25hbCIgc2lnbGE9IkNSRUROIiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIEVzcGVjaWFsIGRlc3RpbmFkYSBhIHByb2ZlcmlyIHBhcmVjZXIgw6AgUHJvcG9zdGEgZGUgRW1lbmRhIMOgIENvbnN0aXR1acOnw6NvIG7CuiAyOTAtQSwgZGUgMjAxMywgZGEgU3JhLiBNYXJnYXJpZGEgU2Fsb23Do28gZSBvdXRyb3MsIHF1ZSAmcXVvdDthbHRlcmEgZSBhZGljaW9uYSBkaXNwb3NpdGl2b3MgbmEgQ29uc3RpdHVpw6fDo28gRmVkZXJhbCBwYXJhIGF0dWFsaXphciBvIHRyYXRhbWVudG8gZGFzIGF0aXZpZGFkZXMgZGUgY2nDqm5jaWEsIHRlY25vbG9naWEgZSBpbm92YcOnw6NvJnF1b3Q7IiBzaWdsYT0iUEVDMjkwMTMiIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gRXNwZWNpYWwgZGVzdGluYWRhIGEgcHJvZmVyaXIgcGFyZWNlciDDoCBQcm9wb3N0YSBkZSBFbWVuZGEgw6AgQ29uc3RpdHVpw6fDo28gbsK6IDQ5MSwgZGUgMjAxMCwgZG8gU3IuIEx1aXogQ2FybG9zIEhhdWx5IGUgb3V0cm9zLCBxdWUgJnF1b3Q7YWNyZXNjZSBpbmNpc29zIGFvIGFydC4gMTUwLCBWSSBlIGFydC4gMTU1LCBYIGRhIENvbnN0aXR1acOnw6NvIEZlZGVyYWwmcXVvdDsgKHByb8OtYmUgYSBjcmlhw6fDo28gZGUgaW1wb3N0byBpbmNpZGVudGUgc29icmUgaW5zdW1vcyBhZ3LDrWNvbGFzLCBwZWN1w6FyaWEsIGFsaW1lbnRvcyBwYXJhIG8gY29uc3VtbyBodW1hbm8gZSBtZWRpY2FtZW50b3MpLCBlIGFwZW5zYWRhcyIgc2lnbGE9IlBFQzQ5MTEwIiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIEVzcGVjaWFsIGRlc3RpbmFkYSBhIHByb2ZlcmlyIHBhcmVjZXIgYW8gUHJvamV0byBkZSBMZWkgbsK6IDIuMTc3LCBkZSAyMDExLCBkbyBTci4gQnJ1bm8gQXJhw7pqbywgcXVlICZxdW90O2luc3RpdHVpIG8gQ8OzZGlnbyBOYWNpb25hbCBkZSBDacOqbmNpYSxUZWNub2xvZ2lhIGUgSW5vdmHDp8OjbyZxdW90OyIgc2lnbGE9IlBMMjE3NzExIiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iU3ViY29taXNzw6NvIEVzcGVjaWFsIHBhcmEgcHJvcG9yIGxlZ2lzbGHDp8OjbyBxdWUgcG9zc2liaWxpdGUgYSByZWN1cGVyYcOnw6NvIGRvcyBhdGl2b3Mgb3JpZ2luw6FyaW9zIGUgcHJvZHV0b3MgZGUgY3JpbWVzLCBlbmNvbnRyYWRvcyBubyBleHRlcmlvciwgZGUgZm9ybWEgZWZpY2llbnRlIGUgY8OpbGVyZS4iIHNpZ2xhPSJTVUJSRUFUTyIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IlN1YmNvbWlzc8OjbyBQZXJtYW5lbnRlIE1hcmNvIFJlZ3VsYXTDs3JpbyBkZSBNaW5lcmHDp8OjbyBubyBCcmFzaWwiIHNpZ2xhPSJTVUJSRUdNTiIgLz4NCiAgICAgIDwvc3VwbGVudGU+DQogICAgPC9jb21pc3NvZXM+DQogIDwvZGVwdXRhZG8+DQogIDxkZXB1dGFkbz4NCiAgICA8aWRlQ2FkYXN0cm8+MTY3NzIyPC9pZGVDYWRhc3Rybz4NCiAgICA8Y29uZGljYW8+VGl0dWxhcjwvY29uZGljYW8+DQogICAgPG1hdHJpY3VsYT41ODM8L21hdHJpY3VsYT4NCiAgICA8aWRQYXJsYW1lbnRhcj41MzI5MDA8L2lkUGFybGFtZW50YXI+DQogICAgPG5vbWU+TUFSQ09TIFJPR8OJUklPIERBIFNJTFZBIEJSSVRPPC9ub21lPg0KICAgIDxub21lUGFybGFtZW50YXI+TUFSQ09TIFJPR8OJUklPPC9ub21lUGFybGFtZW50YXI+DQogICAgPHVybEZvdG8+aHR0cDovL3d3dy5jYW1hcmEuZ292LmJyL2ludGVybmV0L2RlcHV0YWRvL2JhbmRlcC8xNjc3MjIuanBnPC91cmxGb3RvPg0KICAgIDxzZXhvPm1hc2N1bGlubzwvc2V4bz4NCiAgICA8dWY+Uk88L3VmPg0KICAgIDxwYXJ0aWRvPlBEVDwvcGFydGlkbz4NCiAgICA8Z2FiaW5ldGU+NTgzPC9nYWJpbmV0ZT4NCiAgICA8YW5leG8+MzwvYW5leG8+DQogICAgPGZvbmU+MzIxNS01NTgzPC9mb25lPg0KICAgIDxlbWFpbD5kZXAubWFyY29zcm9nZXJpb0BjYW1hcmEuZ292LmJyPC9lbWFpbD4NCiAgICA8Y29taXNzb2VzPg0KICAgICAgPHRpdHVsYXI+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gRXh0ZXJuYSBkZXN0aW5hZGEgYSBhdmFsaWFyIGFzIGNhdXNhcyBkYSBlbmNoZW50ZSBkbyBSaW8gTWFkZWlyYSBlIGFjb21wYW5oYXIgYXMgYcOnw7VlcyBlbXByZWVuZGlkYXMgcGVsbyBnb3Zlcm5vIGZlZGVyYWwsIHBlbG8gZ292ZXJubyBkbyBlc3RhZG8gZGUgUm9uZMO0bmlhIGUgcHJlZmVpdHVyYXMgZGFzIGNpZGFkZXMgZGEgcmVnacOjbyBhbWF6w7RuaWNhIGF0aW5naWRhcy4iIHNpZ2xhPSJDRVhFTkNNQSIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBNaXN0YSBkZSBQbGFub3MsIE9yw6dhbWVudG9zIFDDumJsaWNvcyBlIEZpc2NhbGl6YcOnw6NvIiBzaWdsYT0iQ01PIiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29uc2VsaG8gZGUgw4l0aWNhIGUgRGVjb3JvIFBhcmxhbWVudGFyIGRhIEPDom1hcmEgZG9zIERlcHV0YWRvcyIgc2lnbGE9IkNPRVRJQ0EiIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gZGUgUmVsYcOnw7VlcyBFeHRlcmlvcmVzIGUgZGUgRGVmZXNhIE5hY2lvbmFsIiBzaWdsYT0iQ1JFRE4iIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gRXNwZWNpYWwgZGVzdGluYWRhIGEgcHJvZmVyaXIgcGFyZWNlciDDoCBQcm9wb3N0YSBkZSBFbWVuZGEgw6AgQ29uc3RpdHVpw6fDo28gbsK6IDExLUEsIGRlIDIwMTEsIGRvIFNyLiBTYW5kcm8gQWxleCwgcXVlICZxdW90O2FsdGVyYSBlIGFjcmVzY2VudGEgbm92b3MgZGlzcG9zaXRpdm9zIMOgIENvbnN0aXR1acOnw6NvIEZlZGVyYWwsIHZlZGFuZG8gYSBub21lYcOnw6NvIG91IGEgZGVzaWduYcOnw6NvIHBhcmEgb3MgY2FyZ29zIHF1ZSBtZW5jaW9uYSBkYXF1ZWxlcyBjb25zaWRlcmFkb3MgaW5lbGVnw612ZWlzIHBlbGEgSnVzdGnDp2EgRWxlaXRvcmFsIHBhcmEgcXVhbHF1ZXIgY2FyZ28mcXVvdDsgKHByb8OtYmUgYSBub21lYcOnw6NvIGRhcXVlbGVzIHF1ZSB0ZW5oYW0gc2lkbyBjb25zaWRlcmFkb3MgaW5lbGVnw612ZWlzIHBlbGEgSnVzdGnDp2EgRWxlaXRvcmFsIHBhcmEgb3MgY2FyZ29zIGRlIE1pbmlzdHJvIGRlIEVzdGFkbyBvdSBjYXJnbyBlcXVpcGFyYWRvLCBTZWNyZXTDoXJpbyBFeGVjdXRpdm8sIGNhcmdvcyBlbSBjb21pc3PDo28gZSBkZXNpZ25hw6fDo28gcGFyYSBleGVyY8OtY2lvIGRlIGZ1bsOnw6NvIGRlIGNvbmZpYW7Dp2EpIiBzaWdsYT0iUEVDMDExMTEiIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gRXNwZWNpYWwgZGVzdGluYWRhIGEgcHJvZmVyaXIgcGFyZWNlciDDoCBQcm9wb3N0YSBkZSBFbWVuZGEgw6AgQ29uc3RpdHVpw6fDo28gbsK6IDMyLUEsIGRlIDE5OTksIGRvIFNyLiBQb21wZW8gZGUgTWF0dG9zLCBxdWUgJnF1b3Q7ZGV0ZXJtaW5hIGEgY29uY2Vzc8OjbyBkZSBib2xzYXMgZGUgZXN0dWRvcyBlIGNyw6lkaXRvIGVkdWNhdGl2byBwYXJhIG8gZW5zaW5vIG3DqWRpbyBlIHN1cGVyaW9yIGFvcyBlc3R1ZGFudGVzIGNhcmVudGVzIGVtIGluc3RpdHVpw6fDtWVzIHByaXZhZGFzLCBhY3Jlc2NlbnRhbmRvIGluY2lzbyBWSUlJIGFvIGFydC4gMjA4IGRhIENvbnN0aXR1acOnw6NvIEZlZGVyYWwmcXVvdDsiIHNpZ2xhPSJQRUMwMzI5OSIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBFc3BlY2lhbCBkZXN0aW5hZGEgYSBwcm9mZXJpciBwYXJlY2VyIMOgIFByb3Bvc3RhIGRlIEVtZW5kYSDDoCBDb25zdGl0dWnDp8OjbyBuwrogNTMtQSwgZGUgMjAwNywgZG8gU3IuIEpvZnJhbiBGcmVqYXQsIHF1ZSAmcXVvdDtkw6Egbm92YSByZWRhw6fDo28gYW8gwqcgM8K6IGRvIEFydC4gMzkgZGEgQ29uc3RpdHVpw6fDo28gRmVkZXJhbCZxdW90OyAoZ2FyYW50ZSBhbyBzZXJ2aWRvciBkZSBjYXJnbyBlbSBjb21pc3PDo28gZGUgbGl2cmUgbm9tZWHDp8OjbyBlIGV4b25lcmHDp8OjbywgZGlyZWl0byBhIGF2aXNvIHByw6l2aW8sIHNlZ3VybyBkZXNlbXByZWdvLCBGR1RTLCBlbnRyZSBvdXRyb3MpIiBzaWdsYT0iUEVDMDUzMDciIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gRXNwZWNpYWwgZGVzdGluYWRhIGEgYXByZWNpYXIgZSAgcHJvZmVyaXIgcGFyZWNlciDDoCBQcm9wb3N0YSBkZSBFbWVuZGEgw6AgQ29uc3RpdHVpw6fDo28gbsK6IDE4Ni1BLCBkZSAyMDA3LCBkbyBTci4gRMOpY2lvIExpbWEsIHF1ZSAmcXVvdDthY3Jlc2NlbnRhIG9zIMKnIDEzIGUgMTQsIGFvIGFydC4gMzcgZGEgQ29uc3RpdHVpw6fDo28gRmVkZXJhbCZxdW90OyAoZGV0ZXJtaW5hIHF1ZSBsZWkgY29tcGxlbWVudGFyIGRlZmluaXLDoSBhcyBub3JtYXMgZ2VyYWlzIGFwbGljw6F2ZWlzIMOgIEFkbWluaXN0cmHDp8OjbyBUcmlidXTDoXJpYSBkYSBVbmnDo28sIGRvcyBFc3RhZG9zLCBkbyBEaXN0cml0byBGZWRlcmFsIGUgZG9zIE11bmljw61waW9zKSIgc2lnbGE9IlBFQzE4NjA3IiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIEVzcGVjaWFsIGRlc3RpbmFkYSBhIGFwcmVjaWFyIGUgIHByb2ZlcmlyIHBhcmVjZXIgw6AgUHJvcG9zdGEgZGUgRW1lbmRhIMOgIENvbnN0aXR1acOnw6NvIG7CuiAzMjUtQSwgZGUgMjAwOSwgZG8gU3IuIFZhbHRlbmlyIFBlcmVpcmEgZSBvdXRyb3MsIHF1ZSAmcXVvdDthY3Jlc2NlbnRhIFNlw6fDo28gYW8gQ2Fww610dWxvIElWIGRvIFTDrXR1bG8gSVYgZGEgQ29uc3RpdHVpw6fDo28gRmVkZXJhbCwgZGlzcG9uZG8gc29icmUgYSBwZXLDrWNpYSBvZmljaWFsIGRlIG5hdHVyZXphIGNyaW1pbmFsJnF1b3Q7LCBlIGFwZW5zYWRhIiBzaWdsYT0iUEVDMzI1MDkiIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gRXNwZWNpYWwgZGVzdGluYWRhIGEgYW5hbGlzYXIgZSBwcm9mZXJpciBwYXJlY2VyIGFvIFByb2pldG8gZGUgTGVpIG7CuiAzNTU1LUEsIGRlIDIwMDQsIGRvIFNyLiBKb3PDqSBFZHVhcmRvIENhcmRvem8sIHF1ZSAmcXVvdDtlc3RhYmVsZWNlIG5vcm1hcyBnZXJhaXMgZW0gY29udHJhdG9zIGRlIHNlZ3VybyBwcml2YWRvIGUgcmV2b2dhIGRpc3Bvc2l0aXZvcyBkbyBDw7NkaWdvIENpdmlsLCBkbyBDw7NkaWdvIENvbWVyY2lhbCBCcmFzaWxlaXJvIGUgZG8gRGVjcmV0by1MZWkgbsK6IDczIGRlIDE5NjYmcXVvdDsgKHJldm9nYSBkaXNwb3NpdGl2b3MgZGFzIExlaXMgbsK6cyA1NTYsIGRlIDE4NTAgZSAxMC40MDYsIGRlIDIwMDIpIiBzaWdsYT0iUEwzNTU1MDQiIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gRXNwZWNpYWwgZGVzdGluYWRhIGEgcHJvZmVyaXIgcGFyZWNlciBhbyBQcm9qZXRvIGRlIExlaSBuwrogNjU4MywgZGUgMjAxMywgZG8gU3IuIEFuZGVyc29uIEZlcnJlaXJhLCBxdWUgJnF1b3Q7ZGlzcMO1ZSBzb2JyZSBvIEVzdGF0dXRvIGRhIEZhbcOtbGlhIGUgZMOhIG91dHJhcyBwcm92aWTDqm5jaWFzJnF1b3Q7LCBlIGFwZW5zYWRvIiBzaWdsYT0iUEw2NTgzMTMiIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gRXNwZWNpYWwgZGVzdGluYWRhIGEgcHJvZmVyaXIgcGFyZWNlciBhbyBQcm9qZXRvIGRlIExlaSBuwrogNzEwOCwgZGUgMjAxNCwgZG8gU2VuYWRvIEZlZGVyYWwsIHF1ZSAmcXVvdDthbHRlcmEgYSBMZWkgbsK6IDkuMzA3LCBkZSAyMyBkZSBzZXRlbWJybyBkZSAxOTk2LCBlIGEgTGVpIG7CuiA2LjQwNCwgZGUgMTUgZGUgZGV6ZW1icm8gZGUgMTk3NiwgcGFyYSBhbXBsaWFyIG8gIMOibWJpdG8gZGUgYXBsaWNhw6fDo28gZGEgYXJiaXRyYWdlbSBlIGRpc3BvciBzb2JyZSBhIGVzY29saGEgZG9zIMOhcmJpdHJvcyBxdWFuZG8gYXMgcGFydGVzIHJlY29ycmVtIGEgw7NyZ8OjbyBhcmJpdHJhbCwgYSBpbnRlcnJ1cMOnw6NvIGRhIHByZXNjcmnDp8OjbyBwZWxhIGluc3RpdHVpw6fDo28gZGEgYXJiaXRyYWdlbSwgYSBjb25jZXNzw6NvIGRlIHR1dGVsYXMgY2F1dGVsYXJlcyBlIGRlIHVyZ8OqbmNpYSBub3MgY2Fzb3MgZGUgYXJiaXRyYWdlbSwgYSBjYXJ0YSBhcmJpdHJhbCwgYSBzZW50ZW7Dp2EgYXJiaXRyYWwgZSBvIGluY2VudGl2byBhbyBlc3R1ZG8gZG8gaW5zdGl0dXRvIGRhIGFyYml0cmFnZW07IGUgcmV2b2dhIGRpc3Bvc2l0aXZvcyBkYSBMZWkgbsK6IDkuMzA3LCBkZSAyMyBkZSBzZXRlbWJybyBkZSAxOTk2JnF1b3Q7LiIgc2lnbGE9IlBMNzEwODE0IiAvPg0KICAgICAgPC90aXR1bGFyPg0KICAgICAgPHN1cGxlbnRlPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIGRlIENvbnN0aXR1acOnw6NvIGUgSnVzdGnDp2EgZSBkZSBDaWRhZGFuaWEiIHNpZ2xhPSJDQ0pDIiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIGRlIERpcmVpdG9zIEh1bWFub3MgZSBNaW5vcmlhcyIgc2lnbGE9IkNESE0iIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gRXNwZWNpYWwgZGVzdGluYWRhIGEgZWZldHVhciBlc3R1ZG8gZSBhcHJlc2VudGFyIHByb3Bvc3RhcyBlbSByZWxhw6fDo28gw6AgUmVmb3JtYSBkbyBDw7NkaWdvIFBlbmFsIiBzaWdsYT0iQ0VQRU5BTCIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBkZSBMZWdpc2xhw6fDo28gUGFydGljaXBhdGl2YSIgc2lnbGE9IkNMUCIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBQYXJsYW1lbnRhciBNaXN0YSBkZSBJbnF1w6lyaXRvLCBjb20gYSBmaW5hbGlkYWRlIGRlIGludmVzdGlnYXIgaXJyZWd1bGFyaWRhZGVzIGVudm9sdmVuZG8gYSBlbXByZXNhIFBldHLDs2xlbyBCcmFzaWxlaXJvIFMvQSAoUEVUUk9CUkFTKSwgb2NvcnJpZGFzIGVudHJlIG9zIGFub3MgZGUgMjAwNSBlIDIwMTQgZSByZWxhY2lvbmFkYXMgw6AgY29tcHJhIGRhIFJlZmluYXJpYSBkZSBQYXNhZGVuYSwgbm8gVGV4YXMgKEVVQSk7IGFvIGxhbsOnYW1lbnRvIGRlIHBsYXRhZm9ybWFzIGluYWNhYmFkYXM7IGFvIHBhZ2FtZW50byBkZSBwcm9waW5hIGEgZnVuY2lvbsOhcmlvIGRhIGVzdGF0YWw7IGUgYW8gc3VwZXJmYXR1cmFtZW50byBuYSBjb25zdHJ1w6fDo28gZGUgcmVmaW5hcmlhcyIgc2lnbGE9IkNQTUlQRVRSIiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIGRlIFNlZ3VyaWRhZGUgU29jaWFsIGUgRmFtw61saWEiIHNpZ2xhPSJDU1NGIiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIEVzcGVjaWFsIGRlc3RpbmFkYSBhIHByb2ZlcmlyIHBhcmVjZXIgw6AgUHJvcG9zdGEgZGUgRW1lbmRhIMOgIENvbnN0aXR1acOnw6NvIG7CuiAxMC1BLCBkZSAyMDExLCBkbyBTci4gTHVpeiBGZXJuYW5kbyBNYWNoYWRvLCBxdWUgJnF1b3Q7YWx0ZXJhIG9zIGFydHMuIDI4LCAyOSBlIDg0IGRhIENvbnN0aXR1acOnw6NvIEZlZGVyYWwgcGFyYSBpbnN0aXR1aXIgYSBvYnJpZ2F0b3JpZWRhZGUgZGUgZWxhYm9yYcOnw6NvIGUgY3VtcHJpbWVudG8gZG8gcGxhbm8gZGUgbWV0YXMgcGVsbyBQb2RlciBFeGVjdXRpdm8gbXVuaWNpcGFsLCBlc3RhZHVhbCBlIGZlZGVyYWwsIGNvbSBiYXNlIG5hcyBwcm9wb3N0YXMgZGEgY2FtcGFuaGEgZWxlaXRvcmFsJnF1b3Q7IiBzaWdsYT0iUEVDMDEwMTEiIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gRXNwZWNpYWwgZGVzdGluYWRhIGEgYXByZWNpYXIgZSBwcm9mZXJpciBwYXJlY2VyIMOgIFByb3Bvc3RhIGRlIEVtZW5kYSDDoCBDb25zdGl0dWnDp8OjbyBuwrogNzAtQSwgZGUgMjAxMSwgZG8gU2VuYWRvIEZlZGVyYWwsIHF1ZSAmcXVvdDthbHRlcmEgbyBwcm9jZWRpbWVudG8gZGUgYXByZWNpYcOnw6NvIGRhcyBtZWRpZGFzIHByb3Zpc8OzcmlhcyBwZWxvIENvbmdyZXNzbyBOYWNpb25hbCZxdW90OyIgc2lnbGE9IlBFQzA3MDExIiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIEVzcGVjaWFsIGRlc3RpbmFkYSBhIHByb2ZlcmlyIHBhcmVjZXIgw6AgUHJvcG9zdGEgZGUgRW1lbmRhIMOgIENvbnN0aXR1acOnw6NvIG7CuiA4Mi1BLCBkZSAyMDA3LCBkbyBTci4gRmzDoXZpbyBEaW5vIGUgb3V0cm9zLCBxdWUgJnF1b3Q7YWNyZXNjZSBvcyBhcnRzLiAxMzItQSBlIDEzNS1BIGUgYWx0ZXJhIG8gYXJ0LiAxNjggZGEgQ29uc3RpdHVpw6fDo28gRmVkZXJhbCZxdW90OyAgKGF0cmlidWkgYXV0b25vbWlhIGZ1bmNpb25hbCBlIHByZXJyb2dhdGl2YXMgYW9zIG1lbWJyb3MgZGEgRGVmZW5zb3JpYSBQw7pibGljYSwgQWR2b2NhY2lhIGRhIFVuacOjbywgUHJvY3VyYWRvcmlhIGRhIEZhemVuZGEgTmFjaW9uYWwsIFByb2N1cmFkb3JpYS1HZXJhbCBGZWRlcmFsLCBQcm9jdXJhZG9yaWFzIGRhcyBhdXRhcnF1aWFzIGUgw6BzIFByb2N1cmFkb3JpYXMgZG9zIEVzdGFkb3MsIGRvIERpc3RyaXRvIEZlZGVyYWwgZSBkb3MgTXVuaWPDrXBpb3MpIGUgYXBlbnNhZGEiIHNpZ2xhPSJQRUMwODIwNyIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBFc3BlY2lhbCBkZXN0aW5hZGEgYSBwcm9mZXJpciBwYXJlY2VyIMOgIFByb3Bvc3RhIGRlIEVtZW5kYSDDoCBDb25zdGl0dWnDp8OjbyBuwrogMTk2LUEsIGRlIDIwMTIsIGRvIFNlbmFkbyBGZWRlcmFsLCBxdWUgJnF1b3Q7YWx0ZXJhIG8gwqcgMsKwIGRvIGFydC4gNTUgZGEgQ29uc3RpdHVpw6fDo28gRmVkZXJhbCwgcGFyYSBlc3RhYmVsZWNlciBxdWUgYSBwZXJkYSBkZSBtYW5kYXRvIHNlcsOhIGRlY2lkaWRhIHBvciB2b3RvIGFiZXJ0byBub3MgY2Fzb3MgcXVlIGVzcGVjaWZpY2EmcXVvdDsiIHNpZ2xhPSJQRUMxOTYxMiIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBFc3BlY2lhbCBkZXN0aW5hZGEgYSBwcm9mZXJpciBwYXJlY2VyIMOgIFByb3Bvc3RhIGRlIEVtZW5kYSDDoCBDb25zdGl0dWnDp8OjbyBuwrogMTk3LUEsIGRlIDIwMTIsIGRvIFNlbmFkbyBGZWRlcmFsLCBxdWUgJnF1b3Q7YWx0ZXJhIG8gwqcgMsK6IGRvIGFydC4gMTU1IGRhIENvbnN0aXR1acOnw6NvIEZlZGVyYWwsIHBhcmEgbW9kaWZpY2FyIGEgc2lzdGVtw6F0aWNhIGRlIGNvYnJhbsOnYSBkbyBpbXBvc3RvIHNvYnJlIG9wZXJhw6fDtWVzIHJlbGF0aXZhcyDDoCBjaXJjdWxhw6fDo28gZGUgbWVyY2Fkb3JpYXMgZSBzb2JyZSBwcmVzdGHDp8O1ZXMgZGUgc2VydmnDp29zIGRlIHRyYW5zcG9ydGUgaW50ZXJlc3RhZHVhbCBlIGludGVybXVuaWNpcGFsIGUgZGUgY29tdW5pY2HDp8OjbyBpbmNpZGVudGUgc29icmUgYXMgb3BlcmHDp8O1ZXMgZSBwcmVzdGHDp8O1ZXMgcmVhbGl6YWRhcyBkZSBmb3JtYSBuw6NvIHByZXNlbmNpYWwgZSBxdWUgZGVzdGluZW0gYmVucyBlIHNlcnZpw6dvcyBhIGNvbnN1bWlkb3IgZmluYWwgbG9jYWxpemFkbyBlbSBvdXRybyBFc3RhZG8mcXVvdDsiIHNpZ2xhPSJQRUMxOTcxMiIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBFc3BlY2lhbCBkZXN0aW5hZGEgYSBwcm9mZXJpciBwYXJlY2VyIMOgIFByb3Bvc3RhIGRlIEVtZW5kYSDDoCBDb25zdGl0dWnDp8OjbyBuwrogMjA0LUEsIGRlIDIwMTIsIGRvIFNyLiBKb8OjbyBDYWxkYXMgZSBvdXRyb3MsIHF1ZSAmcXVvdDtkw6Egbm92YSByZWRhw6fDo28gYW9zIGFydHMuIDk0LCAxMDQsIDExOSBlIDEyMCBkYSBDb25zdGl0dWnDp8OjbyBGZWRlcmFsLCBwYXJhIGFsdGVyYXIgYSBmb3JtYSBkZSBpbmRpY2HDp8OjbyBkZSBtZW1icm9zIGRvIE1pbmlzdMOpcmlvIFDDumJsaWNvIGUgYWR2b2dhZG9zIMOgcyB2YWdhcyBub3MgVHJpYnVuYWlzJnF1b3Q7IiBzaWdsYT0iUEVDMjA0MTIiIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gRXNwZWNpYWwgZGVzdGluYWRhIGEgcHJvZmVyaXIgcGFyZWNlciDDoCBQcm9wb3N0YSBkZSBFbWVuZGEgw6AgQ29uc3RpdHVpw6fDo28gbsK6IDIwOS1BLCBkZSAyMDEyLCBkYSBTcsKqIFJvc2UgZGUgRnJlaXRhcywgZG8gU3IuIEx1aXogUGl0aW1hbiBlIG91dHJvcywgcXVlICZxdW90O2luc2VyZSBvIMKnIDHCuiBhbyBhcnQuIDEwNSwgZGEgQ29uc3RpdHVpw6fDo28gRmVkZXJhbCwgZSByZW51bWVyYSBvIHBhcsOhZ3JhZm8gw7puaWNvJnF1b3Q7IChwYXJhIGF0cmlidWlyIHJlcXVpc2l0byBkZSBhZG1pc3NpYmlsaWRhZGUgYW8gcmVjdXJzbyBlc3BlY2lhbCBubyDDom1iaXRvIGRvIFNUSikiIHNpZ2xhPSJQRUMyMDkxMiIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBFc3BlY2lhbCBkZXN0aW5hZGEgYSBwcm9mZXJpciBwYXJlY2VyIMOgIFByb3Bvc3RhIGRlIEVtZW5kYSDDoCBDb25zdGl0dWnDp8OjbyBuwrogMzEzLUEsIGRlIDIwMTMsIGRvIFNlbmFkbyBGZWRlcmFsLCBxdWUgJnF1b3Q7YWx0ZXJhIG8gYXJ0LiA1NSBkYSBDb25zdGl0dWnDp8OjbyBGZWRlcmFsIHBhcmEgdG9ybmFyIGF1dG9tw6F0aWNhIGEgcGVyZGEgZG8gbWFuZGF0byBkZSBwYXJsYW1lbnRhciBuYXMgaGlww7N0ZXNlcyBkZSBpbXByb2JpZGFkZSBhZG1pbmlzdHJhdGl2YSBvdSBkZSBjb25kZW5hw6fDo28gcG9yIGNyaW1lIGNvbnRyYSBhIEFkbWluaXN0cmHDp8OjbyBQw7pibGljYSZxdW90OywgZSBhcGVuc2FkYSIgc2lnbGE9IlBFQzMxMzEzIiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIEVzcGVjaWFsIGRlc3RpbmFkYSBhIHByb2ZlcmlyIHBhcmVjZXIgw6AgUHJvcG9zdGEgZGUgRW1lbmRhIMOgIENvbnN0aXR1acOnw6NvIG7CuiA0NDMtQSwgZGUgMjAwOSwgZG8gU3IuIEJvbmlmw6FjaW8gZGUgQW5kcmFkYSwgZXN0YWJlbGVjZW5kbyBxdWUgJnF1b3Q7byBzdWJzw61kaW8gZG8gZ3JhdSBvdSBuw612ZWwgbcOheGltbyBkYXMgY2FycmVpcmFzIGRhIEFkdm9jYWNpYS1HZXJhbCBkYSBVbmnDo28sIGRhcyBQcm9jdXJhZG9yaWFzIGRvcyBFc3RhZG9zIGUgZG8gRGlzdHJpdG8gRmVkZXJhbCBjb3JyZXNwb25kZXLDoSBhIG5vdmVudGEgaW50ZWlyb3MgZSB2aW50ZSBlIGNpbmNvIGNlbnTDqXNpbW9zIHBvciBjZW50byBkbyBzdWJzw61kaW8gbWVuc2FsLCBmaXhhZG8gcGFyYSBvcyBNaW5pc3Ryb3MgZG8gU3VwcmVtbyBUcmlidW5hbCBGZWRlcmFsLCBlIG9zIHN1YnPDrWRpb3MgZG9zIGRlbWFpcyBpbnRlZ3JhbnRlcyBkYXMgcmVzcGVjdGl2YXMgY2F0ZWdvcmlhcyBkYSBlc3RydXR1cmEgZGEgYWR2b2NhY2lhIHDDumJsaWNhIHNlcsOjbyBmaXhhZG9zIGVtIGxlaSBlIGVzY2Fsb25hZG9zLCBuw6NvIHBvZGVuZG8gYSBkaWZlcmVuw6dhIGVudHJlIHVtIGUgb3V0cm8gc2VyIHN1cGVyaW9yIGEgZGV6IHBvciBjZW50cm8gb3UgaW5mZXJpb3IgYSBjaW5jbyBwb3IgY2VudG8sIG5lbSBleGNlZGVyIGEgbm92ZW50YSBpbnRlaXJvcyBlIHZpbnRlIGUgY2luY28gY2VudMOpc2ltb3MgcG9yIGNlbnRvIGRvIHN1YnPDrWRpbyBtZW5zYWwgZml4YWRvIHBhcmEgb3MgTWluaXN0cm9zIGRvIFN1cHJlbW8gVHJpYnVuYWwgRmVkZXJhbCwgb2JlZGVjaWRvLCBlbSBxdWFscXVlciBjYXNvLCBvIGRpc3Bvc3RvIG5vcyBhcnRpZ29zIDM3LCBYSSwgZSAzOSwgwqcgNMK6JnF1b3Q7IiBzaWdsYT0iUEVDNDQzMDkiIC8+DQogICAgICAgIDxjb21pc3NhbyBub21lPSJDb21pc3PDo28gRXNwZWNpYWwgZGVzdGluYWRhIGEgcHJvZmVyaXIgcGFyZWNlciBhbyBQcm9qZXRvIGRlIExlaSBuwrogMS45MjcsIGRlIDIwMDMsIGRvIFNyLiBGZXJuYW5kbyBkZSBGYWJpbmhvLCBxdWUgJnF1b3Q7YWNyZXNjZW50YSBkaXNwb3NpdGl2byDDoCBMZWkgbsK6IDEwLjMzNiwgZGUgMTkgZGUgZGV6ZW1icm8gZGUgMjAwMSwgcGFyYSBpc2VudGFyIGFzIGVtcHJlc2FzIGRlIHRyYW5zcG9ydGUgY29sZXRpdm8gdXJiYW5vIG11bmljaXBhbCBlIFRyYW5zcG9ydGUgQ29sZXRpdm8gVXJiYW5vIEFsdGVybmF0aXZvIGRhIENvbnRyaWJ1acOnw6NvIGRlIEludGVydmVuw6fDo28gbm8gRG9tw61uaW8gRWNvbsO0bWljbyAtIENJREUmcXVvdDsiIHNpZ2xhPSJQTDE5MjcwMyIgLz4NCiAgICAgICAgPGNvbWlzc2FvIG5vbWU9IkNvbWlzc8OjbyBFc3BlY2lhbCBkZXN0aW5hZGEgYSBwcm9mZXJpciBwYXJlY2VyIGFvIFByb2pldG8gZGUgTGVpICBuwrogNTY5MiwgZGUgMjAxMywgZG8gU3IuIFPDqXJnaW8gWnZlaXRlciwgcXVlICZxdW90O2Rpc3DDtWUgc29icmUgbyBtb25vcMOzbGlvIGRhIFVuacOjbyBuYSBleHBsb3Jhw6fDo28gZGFzIHJpcXVlemFzIGRhIEFtYXrDtG5pYSwgY29tIGEgY3JpYcOnw6NvIGRvIENvbnNlbGhvIE5hY2lvbmFsIGRlIFBvbMOtdGljYSBkYSBBbWF6w7RuaWEgZSBkYSBBZ8OqbmNpYSBOYWNpb25hbCBkZSBFeHBsb3Jhw6fDo28gZG9zIFJlY3Vyc29zIE5hdHVyYWlzIGRhIEFtYXrDtG5pYSwgZ2FyYW50aW5kbyBhIHByb3Rlw6fDo28gYW8gbWVpbyBhbWJpZW50ZSBlIGEgc29iZXJhbmlhIG5hY2lvbmFsLCBlIGTDoSBvdXRyYXMgcHJvdmlkw6puY2lhcyZxdW90OyIgc2lnbGE9IlBMNTY5MjEzIiAvPg0KICAgICAgICA8Y29taXNzYW8gbm9tZT0iQ29taXNzw6NvIEVzcGVjaWFsIGRlc3RpbmFkYSBhIHByb2ZlcmlyIHBhcmVjZXIgYW8gUHJvamV0byBkZSBMZWkgbsK6IDY5OTgsIGRlIDIwMTMsIGRvIFNyLiBPc21hciBUZXJyYSBlIG91dHJvcywgcXVlICZxdW90O2FsdGVyYSBvIGFydC4gMcK6IGUgaW5zZXJlIGRpc3Bvc2l0aXZvcyBzb2JyZSBhIFByaW1laXJhIEluZsOibmNpYSBuYSBMZWkgbsK6IDguMDY5LCBkZSAxOTkwLCBxdWUgZGlzcMO1ZSBzb2JyZSBvIEVzdGF0dXRvIGRhIENyaWFuw6dhIGUgZG8gQWRvbGVzY2VudGUgZSBkw6Egb3V0cmFzIHByb3ZpZMOqbmNpYXMmcXVvdDsiIHNpZ2xhPSJQTDY5OTgxMyIgLz4NCiAgICAgIDwvc3VwbGVudGU+DQogICAgPC9jb21pc3NvZXM+DQogIDwvZGVwdXRhZG8+DQo8L2RlcHV0YWRvcz4==
43
+ http_version:
44
+ recorded_at: Thu, 30 Oct 2014 00:59:13 GMT
45
+ recorded_with: VCR 2.9.3