sunspot_plus 0.3.2 → 0.3.3
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.
- metadata +101 -138
- data/spec/helpers/delayed_job_stub.rb +0 -7
- data/spec/spec_helper.rb +0 -17
- data/spec/sunspot/session_proxy/delayed_job/safe_configuration_spec.rb +0 -5
- data/spec/sunspot/session_proxy/delayed_job_session_proxy_spec.rb +0 -71
- data/spec/sunspot/session_proxy/spec_helper.rb +0 -9
- data/spec/sunspot/types/case_insensitive_sort_type_spec.rb +0 -101
- data/spec/sunspot_plus_spec.rb +0 -5
metadata
CHANGED
|
@@ -1,139 +1,123 @@
|
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: sunspot_plus
|
|
3
|
-
version: !ruby/object:Gem::Version
|
|
4
|
-
|
|
5
|
-
prerelease:
|
|
6
|
-
segments:
|
|
7
|
-
- 0
|
|
8
|
-
- 3
|
|
9
|
-
- 2
|
|
10
|
-
version: 0.3.2
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 0.3.3
|
|
5
|
+
prerelease:
|
|
11
6
|
platform: ruby
|
|
12
|
-
authors:
|
|
7
|
+
authors:
|
|
13
8
|
- Louis Gillies
|
|
14
9
|
autorequire:
|
|
15
10
|
bindir: bin
|
|
16
11
|
cert_chain: []
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
dependencies:
|
|
21
|
-
- !ruby/object:Gem::Dependency
|
|
22
|
-
prerelease: false
|
|
23
|
-
type: :development
|
|
12
|
+
date: 2013-01-04 00:00:00.000000000 Z
|
|
13
|
+
dependencies:
|
|
14
|
+
- !ruby/object:Gem::Dependency
|
|
24
15
|
name: rspec
|
|
25
|
-
|
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
|
26
17
|
none: false
|
|
27
|
-
requirements:
|
|
18
|
+
requirements:
|
|
28
19
|
- - ~>
|
|
29
|
-
- !ruby/object:Gem::Version
|
|
30
|
-
hash: 3
|
|
31
|
-
segments:
|
|
32
|
-
- 2
|
|
33
|
-
- 3
|
|
34
|
-
- 0
|
|
20
|
+
- !ruby/object:Gem::Version
|
|
35
21
|
version: 2.3.0
|
|
36
|
-
requirement: *id001
|
|
37
|
-
- !ruby/object:Gem::Dependency
|
|
38
|
-
prerelease: false
|
|
39
22
|
type: :development
|
|
23
|
+
prerelease: false
|
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
25
|
+
none: false
|
|
26
|
+
requirements:
|
|
27
|
+
- - ~>
|
|
28
|
+
- !ruby/object:Gem::Version
|
|
29
|
+
version: 2.3.0
|
|
30
|
+
- !ruby/object:Gem::Dependency
|
|
40
31
|
name: yard
|
|
41
|
-
|
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
|
42
33
|
none: false
|
|
43
|
-
requirements:
|
|
34
|
+
requirements:
|
|
44
35
|
- - ~>
|
|
45
|
-
- !ruby/object:Gem::Version
|
|
46
|
-
hash: 7
|
|
47
|
-
segments:
|
|
48
|
-
- 0
|
|
49
|
-
- 6
|
|
50
|
-
- 0
|
|
36
|
+
- !ruby/object:Gem::Version
|
|
51
37
|
version: 0.6.0
|
|
52
|
-
requirement: *id002
|
|
53
|
-
- !ruby/object:Gem::Dependency
|
|
54
|
-
prerelease: false
|
|
55
38
|
type: :development
|
|
39
|
+
prerelease: false
|
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
41
|
+
none: false
|
|
42
|
+
requirements:
|
|
43
|
+
- - ~>
|
|
44
|
+
- !ruby/object:Gem::Version
|
|
45
|
+
version: 0.6.0
|
|
46
|
+
- !ruby/object:Gem::Dependency
|
|
56
47
|
name: bundler
|
|
57
|
-
|
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
|
58
49
|
none: false
|
|
59
|
-
requirements:
|
|
60
|
-
- -
|
|
61
|
-
- !ruby/object:Gem::Version
|
|
62
|
-
|
|
63
|
-
segments:
|
|
64
|
-
- 0
|
|
65
|
-
version: "0"
|
|
66
|
-
requirement: *id003
|
|
67
|
-
- !ruby/object:Gem::Dependency
|
|
68
|
-
prerelease: false
|
|
50
|
+
requirements:
|
|
51
|
+
- - ! '>='
|
|
52
|
+
- !ruby/object:Gem::Version
|
|
53
|
+
version: '0'
|
|
69
54
|
type: :development
|
|
55
|
+
prerelease: false
|
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
57
|
+
none: false
|
|
58
|
+
requirements:
|
|
59
|
+
- - ! '>='
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: '0'
|
|
62
|
+
- !ruby/object:Gem::Dependency
|
|
70
63
|
name: jeweler
|
|
71
|
-
|
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
|
72
65
|
none: false
|
|
73
|
-
requirements:
|
|
74
|
-
- -
|
|
75
|
-
- !ruby/object:Gem::Version
|
|
76
|
-
|
|
77
|
-
segments:
|
|
78
|
-
- 1
|
|
79
|
-
- 5
|
|
80
|
-
- 2
|
|
81
|
-
version: 1.5.2
|
|
82
|
-
requirement: *id004
|
|
83
|
-
- !ruby/object:Gem::Dependency
|
|
84
|
-
prerelease: false
|
|
66
|
+
requirements:
|
|
67
|
+
- - ! '>='
|
|
68
|
+
- !ruby/object:Gem::Version
|
|
69
|
+
version: '0'
|
|
85
70
|
type: :development
|
|
86
|
-
name: rcov
|
|
87
|
-
version_requirements: &id005 !ruby/object:Gem::Requirement
|
|
88
|
-
none: false
|
|
89
|
-
requirements:
|
|
90
|
-
- - ">="
|
|
91
|
-
- !ruby/object:Gem::Version
|
|
92
|
-
hash: 3
|
|
93
|
-
segments:
|
|
94
|
-
- 0
|
|
95
|
-
version: "0"
|
|
96
|
-
requirement: *id005
|
|
97
|
-
- !ruby/object:Gem::Dependency
|
|
98
71
|
prerelease: false
|
|
99
|
-
|
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
73
|
+
none: false
|
|
74
|
+
requirements:
|
|
75
|
+
- - ! '>='
|
|
76
|
+
- !ruby/object:Gem::Version
|
|
77
|
+
version: '0'
|
|
78
|
+
- !ruby/object:Gem::Dependency
|
|
100
79
|
name: rspec
|
|
101
|
-
|
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
|
102
81
|
none: false
|
|
103
|
-
requirements:
|
|
104
|
-
- -
|
|
105
|
-
- !ruby/object:Gem::Version
|
|
106
|
-
hash: 27
|
|
107
|
-
segments:
|
|
108
|
-
- 1
|
|
109
|
-
- 3
|
|
110
|
-
- 0
|
|
82
|
+
requirements:
|
|
83
|
+
- - '='
|
|
84
|
+
- !ruby/object:Gem::Version
|
|
111
85
|
version: 1.3.0
|
|
112
|
-
requirement: *id006
|
|
113
|
-
- !ruby/object:Gem::Dependency
|
|
114
|
-
prerelease: false
|
|
115
86
|
type: :development
|
|
87
|
+
prerelease: false
|
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
89
|
+
none: false
|
|
90
|
+
requirements:
|
|
91
|
+
- - '='
|
|
92
|
+
- !ruby/object:Gem::Version
|
|
93
|
+
version: 1.3.0
|
|
94
|
+
- !ruby/object:Gem::Dependency
|
|
116
95
|
name: yard
|
|
117
|
-
|
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
|
118
97
|
none: false
|
|
119
|
-
requirements:
|
|
120
|
-
- -
|
|
121
|
-
- !ruby/object:Gem::Version
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
98
|
+
requirements:
|
|
99
|
+
- - ! '>='
|
|
100
|
+
- !ruby/object:Gem::Version
|
|
101
|
+
version: '0'
|
|
102
|
+
type: :development
|
|
103
|
+
prerelease: false
|
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
105
|
+
none: false
|
|
106
|
+
requirements:
|
|
107
|
+
- - ! '>='
|
|
108
|
+
- !ruby/object:Gem::Version
|
|
109
|
+
version: '0'
|
|
110
|
+
description: ! "A library of extensions for outoftime's sunspot gem for solr indexing
|
|
111
|
+
server. Using the session adapter design pattern to add support for:\n 1) delayed_job
|
|
112
|
+
to move indexing commits out of process.\n Support for case insensitive sort
|
|
113
|
+
fields by creating indexed copy of fields transformed for sort.\n "
|
|
128
114
|
email: louisgillies@yahoo.co.uk
|
|
129
115
|
executables: []
|
|
130
|
-
|
|
131
116
|
extensions: []
|
|
132
|
-
|
|
133
|
-
extra_rdoc_files:
|
|
117
|
+
extra_rdoc_files:
|
|
134
118
|
- LICENSE
|
|
135
119
|
- README.rdoc
|
|
136
|
-
files:
|
|
120
|
+
files:
|
|
137
121
|
- lib/sunspot_plus.rb
|
|
138
122
|
- lib/sunspot_plus/dsl/fields.rb
|
|
139
123
|
- lib/sunspot_plus/dsl/query/case_insensitive_sort.rb
|
|
@@ -144,52 +128,31 @@ files:
|
|
|
144
128
|
- lib/sunspot_plus/type/case_insensitive_sort_type.rb
|
|
145
129
|
- LICENSE
|
|
146
130
|
- README.rdoc
|
|
147
|
-
- spec/helpers/delayed_job_stub.rb
|
|
148
|
-
- spec/spec_helper.rb
|
|
149
|
-
- spec/sunspot/session_proxy/delayed_job/safe_configuration_spec.rb
|
|
150
|
-
- spec/sunspot/session_proxy/delayed_job_session_proxy_spec.rb
|
|
151
|
-
- spec/sunspot/session_proxy/spec_helper.rb
|
|
152
|
-
- spec/sunspot/types/case_insensitive_sort_type_spec.rb
|
|
153
|
-
- spec/sunspot_plus_spec.rb
|
|
154
|
-
has_rdoc: true
|
|
155
131
|
homepage: http://github.com/playgood/sunspot_plus
|
|
156
132
|
licenses: []
|
|
157
|
-
|
|
158
133
|
post_install_message:
|
|
159
134
|
rdoc_options: []
|
|
160
|
-
|
|
161
|
-
require_paths:
|
|
135
|
+
require_paths:
|
|
162
136
|
- lib
|
|
163
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
|
137
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
164
138
|
none: false
|
|
165
|
-
requirements:
|
|
166
|
-
- -
|
|
167
|
-
- !ruby/object:Gem::Version
|
|
168
|
-
|
|
169
|
-
segments:
|
|
139
|
+
requirements:
|
|
140
|
+
- - ! '>='
|
|
141
|
+
- !ruby/object:Gem::Version
|
|
142
|
+
version: '0'
|
|
143
|
+
segments:
|
|
170
144
|
- 0
|
|
171
|
-
|
|
172
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
145
|
+
hash: -3554715350834872747
|
|
146
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
173
147
|
none: false
|
|
174
|
-
requirements:
|
|
175
|
-
- -
|
|
176
|
-
- !ruby/object:Gem::Version
|
|
177
|
-
|
|
178
|
-
segments:
|
|
179
|
-
- 0
|
|
180
|
-
version: "0"
|
|
148
|
+
requirements:
|
|
149
|
+
- - ! '>='
|
|
150
|
+
- !ruby/object:Gem::Version
|
|
151
|
+
version: '0'
|
|
181
152
|
requirements: []
|
|
182
|
-
|
|
183
153
|
rubyforge_project:
|
|
184
|
-
rubygems_version: 1.
|
|
154
|
+
rubygems_version: 1.8.24
|
|
185
155
|
signing_key:
|
|
186
156
|
specification_version: 3
|
|
187
157
|
summary: Extensions for outoftime's sunspot gem.
|
|
188
|
-
test_files:
|
|
189
|
-
- spec/helpers/delayed_job_stub.rb
|
|
190
|
-
- spec/spec_helper.rb
|
|
191
|
-
- spec/sunspot/session_proxy/delayed_job/safe_configuration_spec.rb
|
|
192
|
-
- spec/sunspot/session_proxy/delayed_job_session_proxy_spec.rb
|
|
193
|
-
- spec/sunspot/session_proxy/spec_helper.rb
|
|
194
|
-
- spec/sunspot/types/case_insensitive_sort_type_spec.rb
|
|
195
|
-
- spec/sunspot_plus_spec.rb
|
|
158
|
+
test_files: []
|
data/spec/spec_helper.rb
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
|
2
|
-
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
|
3
|
-
require 'rubygems'
|
|
4
|
-
require 'sunspot'
|
|
5
|
-
require 'sunspot_matchers'
|
|
6
|
-
require 'sunspot_plus'
|
|
7
|
-
require 'sunspot/session_proxy/abstract_session_proxy'
|
|
8
|
-
require 'rspec'
|
|
9
|
-
require 'helpers/delayed_job_stub'
|
|
10
|
-
|
|
11
|
-
RSpec.configure do |config|
|
|
12
|
-
config.before do
|
|
13
|
-
Sunspot.session = SunspotMatchers::SunspotSessionSpy.new(Sunspot.session)
|
|
14
|
-
end
|
|
15
|
-
config.include SunspotMatchers
|
|
16
|
-
end
|
|
17
|
-
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
|
2
|
-
|
|
3
|
-
describe Sunspot::SessionProxy::DelayedJobSessionProxy do
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
before(:each) do
|
|
8
|
-
|
|
9
|
-
@original_session = Sunspot::Session.new
|
|
10
|
-
@proxy = Sunspot::SessionProxy::DelayedJobSessionProxy.new( @original_session )
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
it "should wrap a current session" do
|
|
15
|
-
@proxy.session.should == @original_session
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
context "methods that should be delegated to the default session" do
|
|
19
|
-
([:new_search, :search, :new_more_like_this, :more_like_this, :config, :index,
|
|
20
|
-
:delete_dirty?, :dirty?, :remove, :remove!, :remove_all, :remove_all!, :remove_by_id, :remove_by_id!]).each do |method|
|
|
21
|
-
it "should delegate #{method.inspect} to its session" do
|
|
22
|
-
args = Array.new(Sunspot::Session.instance_method(method).arity.abs) do
|
|
23
|
-
stub('arg')
|
|
24
|
-
end
|
|
25
|
-
@proxy.session.should_receive(method).with(*args)
|
|
26
|
-
@proxy.send(method, *args)
|
|
27
|
-
end
|
|
28
|
-
end
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
context "methods that commit should queue to delayed job." do
|
|
32
|
-
describe "index" do
|
|
33
|
-
it "should delegate index to @session" do
|
|
34
|
-
@proxy.session.should_receive(:index)
|
|
35
|
-
@proxy.should_receive(:commit)
|
|
36
|
-
@proxy.index!(mock("Model"))
|
|
37
|
-
end
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
describe "commit_if_dirty" do
|
|
41
|
-
it "should delegate dirty? to @session" do
|
|
42
|
-
@proxy.session.should_receive(:dirty?).and_return(true)
|
|
43
|
-
@proxy.should_receive(:commit)
|
|
44
|
-
@proxy.commit_if_dirty
|
|
45
|
-
end
|
|
46
|
-
end
|
|
47
|
-
|
|
48
|
-
describe "commit_if_delete_dirty" do
|
|
49
|
-
it "should delegate delete_dirty? to @session" do
|
|
50
|
-
@proxy.session.should_receive(:delete_dirty?).and_return(true)
|
|
51
|
-
@proxy.should_receive(:commit)
|
|
52
|
-
@proxy.commit_if_delete_dirty
|
|
53
|
-
end
|
|
54
|
-
end
|
|
55
|
-
end
|
|
56
|
-
|
|
57
|
-
context "methods that should be queued" do
|
|
58
|
-
[:commit, :batch].each do |method|
|
|
59
|
-
it "should send #{method} to the delayed_job queue" do
|
|
60
|
-
args = Array.new(Sunspot::Session.instance_method(method).arity.abs) do
|
|
61
|
-
stub('arg')
|
|
62
|
-
end
|
|
63
|
-
Delayed::Job.should_receive(:enqueue)
|
|
64
|
-
@proxy.send(method, *args)
|
|
65
|
-
end
|
|
66
|
-
end
|
|
67
|
-
end
|
|
68
|
-
|
|
69
|
-
it_should_behave_like 'session proxy'
|
|
70
|
-
end
|
|
71
|
-
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
|
|
2
|
-
|
|
3
|
-
shared_examples_for 'session proxy' do
|
|
4
|
-
Sunspot::SessionProxy::AbstractSessionProxy.public_instance_methods(false).each do |method|
|
|
5
|
-
it "should respond to #{method.inspect}" do
|
|
6
|
-
@proxy.should respond_to(method)
|
|
7
|
-
end
|
|
8
|
-
end
|
|
9
|
-
end
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
|
|
2
|
-
|
|
3
|
-
class SomethingToIndex
|
|
4
|
-
def name
|
|
5
|
-
"something"
|
|
6
|
-
end
|
|
7
|
-
|
|
8
|
-
def description
|
|
9
|
-
"description"
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
def another
|
|
13
|
-
"another"
|
|
14
|
-
end
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
describe Sunspot::Type::CaseInsensitiveSortType do
|
|
18
|
-
|
|
19
|
-
before(:each) do
|
|
20
|
-
@sort_type = Sunspot::Type::CaseInsensitiveSortType.instance
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
it "should have an indexed name" do
|
|
24
|
-
@sort_type.indexed_name(:test).should == "test_s"
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
it "should convert a field attribute into a case insensitive field name" do
|
|
28
|
-
@sort_type.field_name(:test).should == "case_insensitive_sort_test"
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
it "should make the value lowercase" do
|
|
32
|
-
@sort_type.to_indexed("This is a sort term that needs to be Case Insensitive").should == "this is a sort term that needs to be case insensitive"
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
it "should case the value to a string" do
|
|
36
|
-
@sort_type.cast("string").should == "string"
|
|
37
|
-
@sort_type.cast("sting").should be_a(String)
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
describe "if i want to defined another pattern" do
|
|
41
|
-
before(:each) do
|
|
42
|
-
Sunspot::Type::CaseInsensitiveSortType.pattern = :upcase
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
it "should use upcase to transform the value" do
|
|
46
|
-
Sunspot::Type::CaseInsensitiveSortType.instance.pattern.should == :upcase
|
|
47
|
-
@sort_type.to_indexed("This is a sort term that needs to be Case Insensitive").should == "THIS IS A SORT TERM THAT NEEDS TO BE CASE INSENSITIVE"
|
|
48
|
-
end
|
|
49
|
-
|
|
50
|
-
context "using a proc" do
|
|
51
|
-
before(:each) do
|
|
52
|
-
Sunspot::Type::CaseInsensitiveSortType.pattern = Proc.new{|value| value << "999"}
|
|
53
|
-
end
|
|
54
|
-
|
|
55
|
-
it "should get rid of an and and the and upcase" do
|
|
56
|
-
Sunspot::Type::CaseInsensitiveSortType.instance.pattern.should be_a(Proc)
|
|
57
|
-
@sort_type.to_indexed("Please call ").should == "Please call 999"
|
|
58
|
-
end
|
|
59
|
-
end
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
describe "using the type" do
|
|
63
|
-
before(:each) do
|
|
64
|
-
Sunspot.setup(SomethingToIndex) do
|
|
65
|
-
string :name
|
|
66
|
-
sort_fields :name
|
|
67
|
-
sort_fields :description, :another
|
|
68
|
-
end
|
|
69
|
-
@something = SomethingToIndex.new
|
|
70
|
-
end
|
|
71
|
-
|
|
72
|
-
it "should index something_to_index with sort field" do
|
|
73
|
-
Sunspot.search(SomethingToIndex) do
|
|
74
|
-
keywords "something"
|
|
75
|
-
order_by((:case_insensitive_sort_name))
|
|
76
|
-
end
|
|
77
|
-
Sunspot.session.should have_search_params(:order_by, :case_insensitive_sort_name, :asc)
|
|
78
|
-
end
|
|
79
|
-
|
|
80
|
-
describe "the ci_order method" do
|
|
81
|
-
it "should add a new ci_order_by method" do
|
|
82
|
-
Sunspot.search(SomethingToIndex) do
|
|
83
|
-
keywords "bobbins"
|
|
84
|
-
ci_order_by(:name)
|
|
85
|
-
end
|
|
86
|
-
Sunspot.session.should have_search_params(:order_by, :case_insensitive_sort_name, :asc)
|
|
87
|
-
end
|
|
88
|
-
|
|
89
|
-
it "should allow the direction to be changed" do
|
|
90
|
-
Sunspot.search(SomethingToIndex) do
|
|
91
|
-
keywords "bobbins"
|
|
92
|
-
ci_order_by(:description, :desc)
|
|
93
|
-
end
|
|
94
|
-
Sunspot.session.should have_search_params(:order_by, :case_insensitive_sort_description, :desc)
|
|
95
|
-
end
|
|
96
|
-
|
|
97
|
-
end
|
|
98
|
-
end
|
|
99
|
-
|
|
100
|
-
end
|
|
101
|
-
|