br_danfe 0.10.1 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +4 -4
  3. data/config/locales/pt-BR.yml +0 -1
  4. data/lib/br_danfe/danfe_lib/infadic.rb +60 -91
  5. data/lib/br_danfe/danfe_lib/infadic_vol.rb +101 -0
  6. data/lib/br_danfe/version.rb +1 -1
  7. data/spec/features/danfe_spec.rb +2 -2
  8. data/spec/fixtures/nfe/lib/{infadic#render-extra_volume_difal.pdf → infadic#render-all_the_informations.pdf} +55 -55
  9. data/spec/fixtures/nfe/lib/infadic#render-difal.pdf +7 -21
  10. data/spec/fixtures/nfe/lib/infadic#render-extra_volume.pdf +43 -57
  11. data/spec/fixtures/nfe/lib/{infadic#render-footer_information.pdf → infadic#render-with_complementary_information.pdf} +6 -13
  12. data/spec/fixtures/nfe/lib/{infadic-with-street-data#render.pdf → infadic#render-with_fisco_additional_information.pdf} +7 -7
  13. data/spec/fixtures/nfe/lib/infadic#render-with_street_data.pdf +104 -0
  14. data/spec/fixtures/nfe/lib/infadic#render.pdf +5 -12
  15. data/spec/fixtures/nfe/lib/infadic_vol#render-extra_volume.pdf +331 -0
  16. data/spec/fixtures/nfe/v2.00/custom_options.fixture.pdf +2 -2
  17. data/spec/fixtures/nfe/v2.00/nfe_simples_nacional.xml.fixture.pdf +2 -2
  18. data/spec/fixtures/nfe/v2.00/nfe_with_extra_volumes.xml.fixture.pdf +51 -51
  19. data/spec/fixtures/nfe/v2.00/nfe_with_fci.xml.fixture.pdf +2 -2
  20. data/spec/fixtures/nfe/v2.00/nfe_with_ns.xml.fixture.pdf +2 -2
  21. data/spec/fixtures/nfe/v2.00/nfe_without_ns.xml.fixture.pdf +3 -3
  22. data/spec/fixtures/nfe/v3.10/nfe_simples_nacional.xml.fixture.pdf +21 -21
  23. data/spec/fixtures/nfe/v3.10/with_footer.fixture.pdf +23 -23
  24. data/spec/fixtures/nfe/v3.10/with_issqn.fixture.pdf +23 -23
  25. data/spec/fixtures/nfe/v3.10/with_three_pages.fixture.pdf +25 -25
  26. data/spec/fixtures/nfe/v3.10/{withot_issqn.fixture.pdf → without_issqn.fixture.pdf} +23 -23
  27. data/spec/fixtures/nfe/v3.10/{withot_issqn.xml → without_issqn.xml} +0 -0
  28. data/spec/lib/danfe_lib/infadic_spec.rb +258 -97
  29. data/spec/lib/danfe_lib/infadic_vol_spec.rb +96 -0
  30. metadata +11 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ac0467a09f17108189d7953b5bd67750e809be05d36afe21c826f61fd4f320f0
4
- data.tar.gz: 7fe38cab43ff0bd9d2ecffc13ef01ceb05206a8687bf327336665ab5097bbd54
3
+ metadata.gz: d97bac5f6aa9b52198d4ddcda57af054804435a44c3582657d3bec9b162532a2
4
+ data.tar.gz: c2bece38b4dd7eff84c3dbc272fb37c3039994f41312df48b8dc14c802755464
5
5
  SHA512:
6
- metadata.gz: e0bd82f8bc9ef158d75ee8f0c485f96797bc861aea126f364fa74d0350b5250e0eff248da553428391b2e8c4d4b1e09979cbe7e53d878667d35a33bcd7a602e1
7
- data.tar.gz: 6ae919d97803f63da6cfde193469cdb416bf1790d17eae3678dd7b54c746cb066db4970696b2c3423887948e43cc7c68eefa295f1eba51793b2f18a8a3090d22
6
+ metadata.gz: e40ac5b1850ecf7645bf93a590110121a0b1cc1be6208273e52f2901331bb44b40a0c84baad938d741fa28be2d0e854c039fd4cf3213323945781be405c69d1f
7
+ data.tar.gz: 302f2a36eda72cca8fa454794dd49e845d7d9c5777c947a2ba2ed662d6dd72187443527b017f1609b5a540840293a3f52a7948c7983a6166fba4558de25587a6
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- br_danfe (0.10.1)
4
+ br_danfe (0.11.0)
5
5
  barby (= 0.5.1)
6
6
  br_documents (>= 0.0.15)
7
7
  i18n (= 0.8.6)
@@ -36,10 +36,10 @@ GEM
36
36
  docile (1.1.5)
37
37
  i18n (0.8.6)
38
38
  json (1.8.6)
39
- mini_portile2 (2.3.0)
39
+ mini_portile2 (2.4.0)
40
40
  minitest (5.11.3)
41
- nokogiri (1.8.5)
42
- mini_portile2 (~> 2.3.0)
41
+ nokogiri (1.10.3)
42
+ mini_portile2 (~> 2.4.0)
43
43
  pdf-core (0.6.1)
44
44
  prawn (2.1.0)
45
45
  pdf-core (~> 0.6.1)
@@ -130,7 +130,6 @@ pt-BR:
130
130
  title: "DADOS ADICIONAIS"
131
131
  infCpl: "INFORMAÇÕES COMPLEMENTARES"
132
132
  reserved: "RESERVADO AO FISCO"
133
- others: "OUTRAS INFORMAÇÕES"
134
133
  difal: "Valores totais do ICMS Interestadual: DIFAL da UF destino R$%{vICMSUFDest} + FCP R$%{vFCPUFDest}; DIFAL da UF Origem R$%{vICMSUFRemet}."
135
134
  vol:
136
135
  title: "CONTINUAÇÃO TRANSPORTADOR/VOLUMES TRANSPORTADOS"
@@ -6,131 +6,100 @@ module BrDanfe
6
6
  def initialize(pdf, xml)
7
7
  @pdf = pdf
8
8
  @xml = xml
9
-
10
- @title = Y_POSITION - 0.41
9
+ @title_position = Y_POSITION - 0.41
11
10
  @y_position = Y_POSITION
12
11
  end
13
12
 
14
- def render(n_vol)
15
- @pdf.ititle 0.42, 10.00, 0.75, @title, "infAdic.title"
16
-
17
- if n_vol > 1
18
- render_extra_volumes
19
- elsif difal?
20
- render_difal
21
- else
22
- title = I18n.t "danfe.infAdic.infCpl"
23
- observation = generate_observation @xml["infAdic/infCpl"]
24
- @pdf.ibox 2.65, 12.45, 0.75, @y_position, title, observation, { size: 6, valign: :top }
25
- end
26
-
27
- @pdf.ibox 2.65, 7.15, 13.20, @y_position, I18n.t("danfe.infAdic.reserved")
13
+ def render(volumes_number)
14
+ render_title
15
+ render_subtitle
16
+ render_volumes if volumes_number > 1
17
+ render_additional_data generate_y_position(volumes_number) if additional_data?
18
+ render_reserved_fisco
28
19
  end
29
20
 
30
21
  private
31
22
 
32
- def render_extra_volumes
33
- @pdf.ibox 2.65, 12.45, 0.75, @y_position, I18n.t("danfe.infAdic.infCpl"), "", { size: 8, valign: :top }
34
-
35
- y = Y_POSITION + 0.20
36
-
37
- if difal?
38
- @pdf.ibox 1.65, 12.45, 0.75, y, "", difal_content, { size: 5, valign: :top, border: 0 }
39
- y += 0.27
40
- else
41
- y += 0.07
42
- end
43
-
44
- @pdf.ibox 2.65, 12.45, 0.75, y, "", I18n.t("danfe.infAdic.vol.title"), { size: 5, valign: :top, border: 0 }
45
-
46
- volumes = 0
47
- y += 0.07
48
-
49
- @xml.collect("xmlns", "vol") do |det|
50
- volumes += 1
51
- if volumes > 1
52
- render_extra_volume(det, y + 0.10)
53
- y += 0.15
54
- end
55
- end
56
-
57
- render_info_cpl_with_others y
23
+ def render_title
24
+ @pdf.ititle 0.42, 10.00, 0.75, @title_position, 'infAdic.title'
58
25
  end
59
26
 
60
- def difal?
61
- !@xml["ICMSTot/vICMSUFDest"].to_f.zero?
27
+ def render_subtitle
28
+ @pdf.ibox 2.65, 12.45, 0.75, @y_position, I18n.t('danfe.infAdic.infCpl'), '', size: 8, valign: :top
62
29
  end
63
30
 
64
- def difal_content
65
- I18n.t("danfe.infAdic.difal",
66
- vICMSUFDest: numerify(@xml["ICMSTot/vICMSUFDest"]),
67
- vFCPUFDest: numerify(@xml["ICMSTot/vFCPUFDest"]),
68
- vICMSUFRemet: numerify(@xml["ICMSTot/vICMSUFRemet"]))
31
+ def render_volumes
32
+ InfadicVol.new(@xml, @pdf).render
69
33
  end
70
34
 
71
- def numerify(value)
72
- Helper.numerify(value) if value != ""
35
+ def render_additional_data(y_position)
36
+ data = generate_additional_data
37
+ @pdf.ibox 2.65, 12.45, 0.75, y_position, '', data, { size: 6, valign: :top, border: 0 }
73
38
  end
74
39
 
75
- def render_extra_volume(det, y)
76
- render_field "qVol", det, 0.70, 0.75, 0.70, 1.04, y, :text
77
- render_field "esp", det, 0.50, 1.35, 3.00, 1.75, y, :text
78
- render_field "marca", det, 0.70, 4.15, 2.00, 4.75, y, :text
79
- render_field "nVol", det, 1.00, 6.10, 1.00, 6.70, y, :text
80
- render_field "pesoB", det, 1.30, 7.00, 1.30, 7.00, y, :numeric
81
- render_field "pesoL", det, 0.90, 8.50, 1.50, 8.50, y, :numeric
40
+ def generate_additional_data
41
+ additional_data = []
42
+ additional_data.push(complementary_content) if complementary?
43
+ additional_data.push(address_content) if address?
44
+ additional_data.push(difal_content) if difal?
45
+ additional_data.push(fisco_content) if fisco?
46
+ additional_data.join(' * ')
82
47
  end
83
48
 
84
- def render_field(field, det, w1, x1, w2, x2, y, kind)
85
- label = I18n.t("danfe.infAdic.vol.#{field}")
86
- value = det.css(field).text
87
-
88
- @pdf.ibox 0.35, w1, x1, y, "", label, style_normal
89
-
90
- if kind == :numeric
91
- @pdf.inumeric 0.35, w2, x2, y, "", value, style_decimal
92
- else
93
- @pdf.ibox 0.35, w2, x2, y, "", value, style_italic
94
- end
49
+ def complementary_content
50
+ @xml['infAdic/infCpl'].to_s
95
51
  end
96
52
 
97
- def style_normal
98
- { size: 4, border: 0 }
53
+ def complementary?
54
+ @xml['infAdic/infCpl'].to_s != ''
99
55
  end
100
56
 
101
- def style_italic
102
- style_normal.merge({ style: :italic })
57
+ def address_content
58
+ "Endereço: #{Helper.generate_address @xml}"
103
59
  end
104
60
 
105
- def style_decimal
106
- style_italic.merge({ decimals: 3 })
61
+ def address?
62
+ Helper.address_is_too_big @pdf, Helper.generate_address(@xml)
107
63
  end
108
64
 
109
- def render_info_cpl_with_others(y)
110
- @pdf.ibox 1.65, 12.45, 0.75, y + 0.30, "", I18n.t("danfe.infAdic.others"), { size: 6, valign: :top, border: 0 }
111
- @pdf.ibox 1.65, 12.45, 0.75, y + 0.50, "", @xml["infAdic/infCpl"], { size: 5, valign: :top, border: 0 }
65
+ def difal_content
66
+ I18n.t(
67
+ 'danfe.infAdic.difal',
68
+ vICMSUFDest: numerify(@xml['ICMSTot/vICMSUFDest']),
69
+ vFCPUFDest: numerify(@xml['ICMSTot/vFCPUFDest']),
70
+ vICMSUFRemet: numerify(@xml['ICMSTot/vICMSUFRemet'])
71
+ )
112
72
  end
113
73
 
114
- def render_difal
115
- @pdf.ibox 2.65, 12.45, 0.75, @y_position, I18n.t("danfe.infAdic.infCpl"), "", { size: 8, valign: :top }
116
-
117
- y = Y_POSITION + 0.20
118
- @pdf.ibox 1.65, 12.45, 0.75, y, "", difal_content, { size: 5, valign: :top, border: 0 }
74
+ def numerify(value)
75
+ Helper.numerify(value) if value != ''
76
+ end
119
77
 
120
- y += 0.10
78
+ def difal?
79
+ @xml['ICMSTot/vICMSUFDest'].to_f != 0
80
+ end
121
81
 
122
- render_info_cpl_with_others y
82
+ def fisco_content
83
+ @xml['infAdic/infAdFisco'].to_s
123
84
  end
124
85
 
125
- def generate_observation(informations)
126
- observation = informations
86
+ def fisco?
87
+ @xml['infAdic/infAdFisco'].to_s.present?
88
+ end
127
89
 
128
- address = Helper.generate_address @xml
129
- if Helper.address_is_too_big @pdf, address
130
- observation = "#{observation} * Endereço: #{address}"
90
+ def generate_y_position(volumes_number)
91
+ if volumes_number > 1
92
+ return Y_POSITION + 0.30 + volumes_number * 0.15 + 0.2
131
93
  end
94
+ Y_POSITION + 0.30
95
+ end
96
+
97
+ def additional_data?
98
+ complementary? || address? || difal? || fisco?
99
+ end
132
100
 
133
- observation
101
+ def render_reserved_fisco
102
+ @pdf.ibox 2.65, 7.15, 13.20, @y_position, I18n.t('danfe.infAdic.reserved')
134
103
  end
135
104
  end
136
105
  end
@@ -0,0 +1,101 @@
1
+ module BrDanfe
2
+ module DanfeLib
3
+ class InfadicVol
4
+ def initialize(xml, pdf)
5
+ @xml = xml
6
+ @pdf = pdf
7
+ @y_position = 27.56
8
+ end
9
+
10
+ def render
11
+ render_volume_title
12
+ render_volume
13
+ end
14
+
15
+ private
16
+
17
+ def render_volume_title
18
+ @pdf.ibox 2.65, 12.45, 0.75, @y_position + 0.30, '', I18n.t('danfe.infAdic.vol.title'), size: 5, valign: :top,
19
+ border: 0
20
+ end
21
+
22
+ def render_volume
23
+ volumes = 0
24
+ y_position = @y_position + 0.47
25
+
26
+ @xml.collect('xmlns', 'vol') do |det|
27
+ volumes += 1
28
+
29
+ if volumes > 1
30
+ render_fields det, y_position
31
+ y_position += 0.15
32
+ end
33
+ end
34
+ end
35
+
36
+ def render_fields(det, y_position)
37
+ render_esp det, y_position
38
+ render_marca det, y_position
39
+ render_qvol det, y_position
40
+ render_nvol det, y_position
41
+ render_pesob det, y_position
42
+ render_pesol det, y_position
43
+ end
44
+
45
+ def render_esp(det, y_position)
46
+ render_item_title 0.5, 1.35, 'esp', y_position
47
+ render_item_field det.css('esp').text, 3, 1.75, y_position
48
+ end
49
+
50
+ def render_item_title(width, x_position, field, y_position)
51
+ label = I18n.t("danfe.infAdic.vol.#{field}")
52
+ @pdf.ibox 0.35, width, x_position, y_position, '', label, style_normal
53
+ end
54
+
55
+ def style_normal
56
+ { size: 4, border: 0 }
57
+ end
58
+
59
+ def render_item_field(value, width, x_position, y_position)
60
+ @pdf.ibox 0.35, width, x_position, y_position, '', value, style_italic
61
+ end
62
+
63
+ def style_italic
64
+ style_normal.merge(style: :italic)
65
+ end
66
+
67
+ def render_marca(det, y_position)
68
+ render_item_title 0.7, 4.15, 'marca', y_position
69
+ render_item_field det.css('marca').text, 2, 4.75, y_position
70
+ end
71
+
72
+ def render_qvol(det, y_position)
73
+ render_item_title 0.7, 0.75, 'qVol', y_position
74
+ render_item_field det.css('qVol').text, 0.7, 1.04, y_position
75
+ end
76
+
77
+ def render_nvol(det, y_position)
78
+ render_item_title 1, 6.1, 'nVol', y_position
79
+ render_item_field det.css('nVol').text, 1, 6.7, y_position
80
+ end
81
+
82
+ def render_pesob(det, y_position)
83
+ render_item_title 1.3, 7, 'pesoB', y_position
84
+ render_peso_item_field det.css('pesoB').text, 1.3, 7, y_position
85
+ end
86
+
87
+ def render_peso_item_field(value, width, x_position, y_pos)
88
+ @pdf.inumeric 0.35, width, x_position, y_pos, '', value, style_decimal
89
+ end
90
+
91
+ def style_decimal
92
+ style_italic.merge(decimals: 3)
93
+ end
94
+
95
+ def render_pesol(det, y_position)
96
+ render_item_title 0.9, 8.5, 'pesoL', y_position
97
+ render_peso_item_field det.css('pesoL').text, 1.5, 8.5, y_position
98
+ end
99
+ end
100
+ end
101
+ end
@@ -1,3 +1,3 @@
1
1
  module BrDanfe
2
- VERSION = '0.10.1'.freeze
2
+ VERSION = '0.11.0'.freeze
3
3
  end
@@ -125,10 +125,10 @@ describe BrDanfe::Danfe do
125
125
  it "renders xml to the pdf" do
126
126
  expect(File.exist?(output_pdf)).to be_falsey
127
127
 
128
- danfe = BrDanfe::Danfe.new(File.read("#{base_dir}withot_issqn.xml"))
128
+ danfe = BrDanfe::Danfe.new(File.read("#{base_dir}without_issqn.xml"))
129
129
  danfe.save_pdf output_pdf
130
130
 
131
- expect("#{base_dir}withot_issqn.fixture.pdf").to have_same_content_of file: output_pdf
131
+ expect("#{base_dir}without_issqn.fixture.pdf").to have_same_content_of file: output_pdf
132
132
  end
133
133
  end
134
134
 
@@ -17,7 +17,7 @@ endobj
17
17
  >>
18
18
  endobj
19
19
  4 0 obj
20
- << /Length 2548
20
+ << /Length 2884
21
21
  >>
22
22
  stream
23
23
  q
@@ -40,198 +40,198 @@ ET
40
40
 
41
41
 
42
42
  BT
43
- 23.2598 83.5771 Td
44
- /F1.0 5 Tf
45
- [<56> 111 <616c6f72657320746f7461697320646f2049434d5320496e746572657374616475616c3a20444946> 74 <414c2064612055462064657374696e6f205224322e3931352c3738202b20464350205224342e3839322c37383b20444946> 74 <414c206461205546204f726967656d20522437352e3339342c37382e>] TJ
46
- ET
47
-
48
-
49
- BT
50
- 23.2598 75.9236 Td
43
+ 23.2598 80.7425 Td
51
44
  /F1.0 5 Tf
52
45
  [<434f4e54494e55> 40 <41> 40 <c7c3> 55 <4f205452414e53504f52> 60 <54> 93 <41444f522f56> 40 <4f4c554d4553205452414e53504f52> 60 <54> 93 <41444f53>] TJ
53
46
  ET
54
47
 
55
48
 
56
49
  BT
57
- 23.2598 71.7877 Td
50
+ 40.2677 76.6066 Td
58
51
  /F1.0 4 Tf
59
- [<51> 10 <55> 40 <414e54> 74 <2e3a>] TJ
52
+ [<455350> 111 <2e3a>] TJ
60
53
  ET
61
54
 
62
55
 
63
56
  BT
64
- 31.4803 71.7877 Td
57
+ 51.6063 76.6066 Td
65
58
  /F3.0 4 Tf
66
- [<32>] TJ
59
+ [<56> 30 <4f4c554d45532032>] TJ
67
60
  ET
68
61
 
69
62
 
70
63
  BT
71
- 40.2677 71.7877 Td
64
+ 119.6378 76.6066 Td
72
65
  /F1.0 4 Tf
73
- [<455350> 111 <2e3a>] TJ
66
+ [<4d415243413a>] TJ
74
67
  ET
75
68
 
76
69
 
77
70
  BT
78
- 51.6063 71.7877 Td
71
+ 136.6457 76.6066 Td
79
72
  /F3.0 4 Tf
80
- [<56> 30 <4f4c554d45532032>] TJ
73
+ [<4449564552534f532032>] TJ
81
74
  ET
82
75
 
83
76
 
84
77
  BT
85
- 119.6378 71.7877 Td
78
+ 23.2598 76.6066 Td
86
79
  /F1.0 4 Tf
87
- [<4d415243413a>] TJ
80
+ [<51> 10 <55> 40 <414e54> 74 <2e3a>] TJ
88
81
  ET
89
82
 
90
83
 
91
84
  BT
92
- 136.6457 71.7877 Td
85
+ 31.4803 76.6066 Td
93
86
  /F3.0 4 Tf
94
- [<4449564552534f532032>] TJ
87
+ [<32>] TJ
95
88
  ET
96
89
 
97
90
 
98
91
  BT
99
- 174.9134 71.7877 Td
92
+ 174.9134 76.6066 Td
100
93
  /F1.0 4 Tf
101
94
  [<4e554d2e3a>] TJ
102
95
  ET
103
96
 
104
97
 
105
98
  BT
106
- 191.9213 71.7877 Td
99
+ 191.9213 76.6066 Td
107
100
  /F3.0 4 Tf
108
101
  [<32>] TJ
109
102
  ET
110
103
 
111
104
 
112
105
  BT
113
- 200.4252 71.7877 Td
106
+ 200.4252 76.6066 Td
114
107
  /F1.0 4 Tf
115
108
  [<5045534f20422e3a>] TJ
116
109
  ET
117
110
 
118
111
 
119
112
  BT
120
- 217.2756 71.7877 Td
113
+ 217.2756 76.6066 Td
121
114
  /F3.0 4 Tf
122
115
  [<322e3230302c303030>] TJ
123
116
  ET
124
117
 
125
118
 
126
119
  BT
127
- 242.9449 71.7877 Td
120
+ 242.9449 76.6066 Td
128
121
  /F1.0 4 Tf
129
122
  [<5045534f204ccd512e3a>] TJ
130
123
  ET
131
124
 
132
125
 
133
126
  BT
134
- 265.4646 71.7877 Td
127
+ 265.4646 76.6066 Td
135
128
  /F3.0 4 Tf
136
129
  [<322e3030302c303030>] TJ
137
130
  ET
138
131
 
139
132
 
140
133
  BT
141
- 23.2598 67.5357 Td
134
+ 40.2677 72.3546 Td
142
135
  /F1.0 4 Tf
143
- [<51> 10 <55> 40 <414e54> 74 <2e3a>] TJ
136
+ [<455350> 111 <2e3a>] TJ
144
137
  ET
145
138
 
146
139
 
147
140
  BT
148
- 31.4803 67.5357 Td
141
+ 51.6063 72.3546 Td
149
142
  /F3.0 4 Tf
150
- [<33>] TJ
143
+ [<56> 30 <4f4c554d45532033>] TJ
151
144
  ET
152
145
 
153
146
 
154
147
  BT
155
- 40.2677 67.5357 Td
148
+ 119.6378 72.3546 Td
156
149
  /F1.0 4 Tf
157
- [<455350> 111 <2e3a>] TJ
150
+ [<4d415243413a>] TJ
158
151
  ET
159
152
 
160
153
 
161
154
  BT
162
- 51.6063 67.5357 Td
155
+ 136.6457 72.3546 Td
163
156
  /F3.0 4 Tf
164
- [<56> 30 <4f4c554d45532033>] TJ
157
+ [<4449564552534f532033>] TJ
165
158
  ET
166
159
 
167
160
 
168
161
  BT
169
- 119.6378 67.5357 Td
162
+ 23.2598 72.3546 Td
170
163
  /F1.0 4 Tf
171
- [<4d415243413a>] TJ
164
+ [<51> 10 <55> 40 <414e54> 74 <2e3a>] TJ
172
165
  ET
173
166
 
174
167
 
175
168
  BT
176
- 136.6457 67.5357 Td
169
+ 31.4803 72.3546 Td
177
170
  /F3.0 4 Tf
178
- [<4449564552534f532033>] TJ
171
+ [<33>] TJ
179
172
  ET
180
173
 
181
174
 
182
175
  BT
183
- 174.9134 67.5357 Td
176
+ 174.9134 72.3546 Td
184
177
  /F1.0 4 Tf
185
178
  [<4e554d2e3a>] TJ
186
179
  ET
187
180
 
188
181
 
189
182
  BT
190
- 191.9213 67.5357 Td
183
+ 191.9213 72.3546 Td
191
184
  /F3.0 4 Tf
192
185
  [<33>] TJ
193
186
  ET
194
187
 
195
188
 
196
189
  BT
197
- 200.4252 67.5357 Td
190
+ 200.4252 72.3546 Td
198
191
  /F1.0 4 Tf
199
192
  [<5045534f20422e3a>] TJ
200
193
  ET
201
194
 
202
195
 
203
196
  BT
204
- 217.2756 67.5357 Td
197
+ 217.2756 72.3546 Td
205
198
  /F3.0 4 Tf
206
199
  [<332e3330302c303030>] TJ
207
200
  ET
208
201
 
209
202
 
210
203
  BT
211
- 242.9449 67.5357 Td
204
+ 242.9449 72.3546 Td
212
205
  /F1.0 4 Tf
213
206
  [<5045534f204ccd512e3a>] TJ
214
207
  ET
215
208
 
216
209
 
217
210
  BT
218
- 265.4646 67.5357 Td
211
+ 265.4646 72.3546 Td
219
212
  /F3.0 4 Tf
220
213
  [<332e3030302c303030>] TJ
221
214
  ET
222
215
 
223
216
 
224
217
  BT
225
- 23.2598 56.2485 Td
218
+ 23.2598 61.6343 Td
226
219
  /F1.0 6 Tf
227
- [<4f555452415320494e464f524d41> 40 <c7d54553>] TJ
220
+ [<4c6f72656d20697073756d20646f6c6f722073697420616d65742c20636f6e73656374657475722061646970697363696e6720656c69742e20446f6e656320636f6e67756520696e20646f6c6f72207365642073616769747469732e202a20456e64657265e76f3a2041> 74 <7620646120536175646164652031313235202d20456d20616e65> 15 <786f20616f>] TJ
228
221
  ET
229
222
 
230
223
 
231
224
  BT
232
- 23.2598 51.2622 Td
233
- /F1.0 5 Tf
234
- [<556d61206f6273657276> 25 <61e7e36f>] TJ
225
+ 23.2598 54.9383 Td
226
+ /F1.0 6 Tf
227
+ [<7375706572206d65726361646f206d61696f7220646f2062616972726f202a2056> 111 <616c6f72657320746f7461697320646f2049434d5320496e746572657374616475616c3a20444946> 74 <414c2064612055462064657374696e6f205224322e3931352c3738202b20464350205224342e3839322c37383b20444946> 74 <414c206461205546>] TJ
228
+ ET
229
+
230
+
231
+ BT
232
+ 23.2598 48.2423 Td
233
+ /F1.0 6 Tf
234
+ [<4f726967656d20522437352e3339342c37382e202a2054> 80 <6f74616c206465204643502d5354> 50 <3a203334382c3936>] TJ
235
235
  ET
236
236
 
237
237
  374.1732 21.5433 202.6772 75.1181 re
@@ -288,15 +288,15 @@ xref
288
288
  0000000109 00000 n
289
289
  0000000158 00000 n
290
290
  0000000215 00000 n
291
- 0000002815 00000 n
292
- 0000003019 00000 n
293
- 0000003117 00000 n
294
- 0000003216 00000 n
291
+ 0000003151 00000 n
292
+ 0000003355 00000 n
293
+ 0000003453 00000 n
294
+ 0000003552 00000 n
295
295
  trailer
296
296
  << /Size 9
297
297
  /Root 2 0 R
298
298
  /Info 1 0 R
299
299
  >>
300
300
  startxref
301
- 3316
301
+ 3652
302
302
  %%EOF