riddl 0.99.177 → 0.99.178

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8343a1b6f969c89f3fa3a40eade71b942023d8fb
4
- data.tar.gz: 65cbebd338a544099f98910236aa39b922f0b945
3
+ metadata.gz: 4a72951b4b67902e5c7c82d11ab2bf7322e2b73b
4
+ data.tar.gz: 0e2dca4f751cc010b30fb7ad68a8982938bd9f1d
5
5
  SHA512:
6
- metadata.gz: b704fad1492e7231d3c022c5d0d4923b0ac7f1d6edba7ca29623f70f7ad96bfa9fd1e67e592b2146762a76465a22adddf178cc9e07de0fae4fa3f960b61bfdb5
7
- data.tar.gz: c11ee29e65d7eef7196f6b8251758cd65c0cf322c8ed6faa3bc270f534cdf5b69cf0084fe79c8858b082a5f21d24aa81fdb1b662e255d3244676a1aaceff2d97
6
+ metadata.gz: 47b2d2176510be477e0536523f9132b4043a6f34c679183eba574fac9d9fc9493d8e5ca6d7088b3820edea7ee47fc2400d57fbd50460ea278ce4566b22d6ccb7
7
+ data.tar.gz: e451bbfe5f5b7b0887273ce83d02433dfdecc655ac6a1f4bb9d2471f2ea2339551c711f2f3f8a00edaedcddb47cbe764550d9a6e70dabd00dcb426db0b391955
@@ -4,7 +4,7 @@ require '../../../lib/ruby/riddl/client'
4
4
  require 'pp'
5
5
 
6
6
  # no ready for use
7
- unless File.exists?('flickr.frob')
7
+ unless File.exists?('.flickr.frob')
8
8
  puts "Check the README file and use authenticate.rb."
9
9
  exit
10
10
  end
@@ -20,13 +20,13 @@ puts "Get resources!!!"
20
20
  rest = flickr.resource("/rest")
21
21
 
22
22
  ### read application key/secret/frob
23
- key = File.read('flickr.key').strip
24
- secret = File.read('flickr.secret').strip
25
- frob = File.read('flickr.frob').strip
23
+ key = File.read('.flickr.key').strip
24
+ secret = File.read('.flickr.secret').strip
25
+ frob = File.read('.flickr.frob').strip
26
26
 
27
27
  ### get
28
- if File.exists?('flickr.token')
29
- token = File.read('flickr.token').strip
28
+ if File.exists?('.flickr.token')
29
+ token = File.read('.flickr.token').strip
30
30
  else
31
31
  puts "hmm, there is no token...."
32
32
  method = 'flickr.auth.getToken'
@@ -37,12 +37,12 @@ else
37
37
  Riddl::Parameter::Simple.new("frob",frob,:query),
38
38
  Riddl::Parameter::Simple.new("api_sig",sig,:query)
39
39
  ]
40
- raise "frob no longer valid, delete flickr.frob then retry authenticate.rb" unless status == 200
40
+ raise "frob no longer valid, delete .flickr.frob then retry authenticate.rb" unless status == 200
41
41
  token = XML::Smart::string(res[0].value.read).find('string(/rsp/auth/token)')
42
42
 
43
43
  puts res[0].value.read
44
44
 
45
- File.open('flickr.token','w'){|f|f.write(token)}
45
+ File.open('.flickr.token','w'){|f|f.write(token)}
46
46
  end
47
47
 
48
48
  # check token
@@ -54,7 +54,7 @@ status, res = rest.get [
54
54
  Riddl::Parameter::Simple.new("auth_token",token,:query),
55
55
  Riddl::Parameter::Simple.new("api_sig",sig,:query)
56
56
  ]
57
- raise "token no longer valid, delete flickr.token, flickr.frob then retry authenticate.rb, flickr.rb" unless status == 200
57
+ raise "token no longer valid, delete .flickr.token, .flickr.frob then retry authenticate.rb, flickr.rb" unless status == 200
58
58
 
59
59
  method = 'flickr.people.findByEmail'
60
60
  email = 'mcsorex@yahoo.com'
@@ -64,6 +64,6 @@ status, res, headers = rest.get [
64
64
  Riddl::Parameter::Simple.new("api_key",key,:query),
65
65
  Riddl::Parameter::Simple.new("find_email",email,:query)
66
66
  ]
67
- raise "token no longer valid, delete flickr.token, flickr.frob then retry authenticate.rb, flickr.rb" unless status == 200
67
+ raise "token no longer valid, delete .flickr.token, .flickr.frob then retry authenticate.rb, flickr.rb" unless status == 200
68
68
 
69
69
  puts "STATUS: #{status} RES:" + res[0].value.read + " HEADERS: #{headers}"
@@ -4,7 +4,7 @@ require '../../../lib/ruby/riddl/client'
4
4
  require 'pp'
5
5
 
6
6
  # no ready for use
7
- unless File.exists?('flickr.frob')
7
+ unless File.exists?('.flickr.frob')
8
8
  puts "Check the README file and use authenticate.rb."
9
9
  exit
10
10
  end
@@ -25,13 +25,13 @@ rest = flickr.resource("/rest")
25
25
  upload = flickr.resource("/upload")
26
26
 
27
27
  ### read application key/secret/frob
28
- key = File.read('flickr.key').strip
29
- secret = File.read('flickr.secret').strip
30
- frob = File.read('flickr.frob').strip
28
+ key = File.read('.flickr.key').strip
29
+ secret = File.read('.flickr.secret').strip
30
+ frob = File.read('.flickr.frob').strip
31
31
 
32
32
  ### get
33
- if File.exists?('flickr.token')
34
- token = File.read('flickr.token').strip
33
+ if File.exists?('.flickr.token')
34
+ token = File.read('.flickr.token').strip
35
35
  else
36
36
  puts "hmm, there is no token...."
37
37
  method = 'flickr.auth.getToken'
@@ -42,12 +42,12 @@ else
42
42
  Riddl::Parameter::Simple.new("frob",frob,:query),
43
43
  Riddl::Parameter::Simple.new("api_sig",sig,:query)
44
44
  ]
45
- raise "frob no longer valid, delete flickr.frob then retry authenticate.rb" unless status == 200
45
+ raise "frob no longer valid, delete .flickr.frob then retry authenticate.rb" unless status == 200
46
46
  token = XML::Smart::string(res[0].value.read).find('string(/rsp/auth/token)')
47
47
 
48
48
  puts res[0].value.read
49
49
 
50
- File.open('flickr.token','w'){|f|f.write(token)}
50
+ File.open('.flickr.token','w'){|f|f.write(token)}
51
51
  end
52
52
 
53
53
  # check token
@@ -59,7 +59,7 @@ status, res = rest.get [
59
59
  Riddl::Parameter::Simple.new("auth_token",token,:query),
60
60
  Riddl::Parameter::Simple.new("api_sig",sig,:query)
61
61
  ]
62
- raise "token no longer valid, delete flickr.token, flickr.frob then retry authenticate.rb, flickr.rb" unless status == 200
62
+ raise "token no longer valid, delete .flickr.token, .flickr.frob then retry authenticate.rb, flickr.rb" unless status == 200
63
63
 
64
64
  # upload image
65
65
  title = "RIDDL Logo"
@@ -4,7 +4,7 @@ require '../../../lib/ruby/riddl/client'
4
4
  require 'pp'
5
5
 
6
6
  # no ready for use
7
- unless File.exists?('flickr.frob')
7
+ unless File.exists?('.flickr.frob')
8
8
  puts "Check the README file and use authenticate.rb."
9
9
  exit
10
10
  end
@@ -25,13 +25,13 @@ rest = flickr.resource("/rest")
25
25
  upload = flickr.resource("/upload")
26
26
 
27
27
  ### read application key/secret/frob
28
- key = File.read('flickr.key').strip
29
- secret = File.read('flickr.secret').strip
30
- frob = File.read('flickr.frob').strip
28
+ key = File.read('.flickr.key').strip
29
+ secret = File.read('.flickr.secret').strip
30
+ frob = File.read('.flickr.frob').strip
31
31
 
32
32
  ### get
33
- if File.exists?('flickr.token')
34
- token = File.read('flickr.token').strip
33
+ if File.exists?('.flickr.token')
34
+ token = File.read('.flickr.token').strip
35
35
  else
36
36
  puts "hmm, there is no token...."
37
37
  method = 'flickr.auth.getToken'
@@ -42,12 +42,12 @@ else
42
42
  Riddl::Parameter::Simple.new("frob",frob,:query),
43
43
  Riddl::Parameter::Simple.new("api_sig",sig,:query)
44
44
  ]
45
- raise "frob no longer valid, delete flickr.frob then retry authenticate.rb" unless status == 200
45
+ raise "frob no longer valid, delete .flickr.frob then retry authenticate.rb" unless status == 200
46
46
  token = XML::Smart::string(res[0].value.read).find('string(/rsp/auth/token)')
47
47
 
48
48
  puts res[0].value.read
49
49
 
50
- File.open('flickr.token','w'){|f|f.write(token)}
50
+ File.open('.flickr.token','w'){|f|f.write(token)}
51
51
  end
52
52
 
53
53
  # check token
@@ -59,7 +59,7 @@ status, res = rest.get [
59
59
  Riddl::Parameter::Simple.new("auth_token",token,:query),
60
60
  Riddl::Parameter::Simple.new("api_sig",sig,:query)
61
61
  ]
62
- raise "token no longer valid, delete flickr.token, flickr.frob then retry authenticate.rb, flickr.rb" unless status == 200
62
+ raise "token no longer valid, delete .flickr.token, .flickr.frob then retry authenticate.rb, flickr.rb" unless status == 200
63
63
 
64
64
  method = 'flickr.people.getPublicPhotos'
65
65
  nsid = '37474074@N08'
@@ -70,7 +70,7 @@ status, res = rest.get [
70
70
  Riddl::Parameter::Simple.new("api_key",key,:query),
71
71
  Riddl::Parameter::Simple.new("user_id",nsid,:query)
72
72
  ]
73
- raise "token no longer valid, delete flickr.token, flickr.frob then retry authenticate.rb, flickr.rb" unless status == 200
73
+ raise "token no longer valid, delete .flickr.token, .flickr.frob then retry authenticate.rb, flickr.rb" unless status == 200
74
74
 
75
75
 
76
76
  puts "RES:" + res[0].value.read
@@ -3,7 +3,7 @@
3
3
  <message name="html">
4
4
  <parameter name="type" mimetype="text/html"/>
5
5
  </message>
6
- <message name="xsl">
6
+ <message name="details">
7
7
  <parameter name="xsl" mimetype="application/xml"/>
8
8
  </message>
9
9
 
@@ -17,7 +17,7 @@
17
17
  </resource>
18
18
  <resource relative='xsls'>
19
19
  <resource>
20
- <get in="*" out="xsl"/>
20
+ <get in="*" out="details"/>
21
21
  </resource>
22
22
  </resource>
23
23
  </resource>
@@ -145,7 +145,6 @@
145
145
  </message>
146
146
 
147
147
  <message name="details">
148
- <parameter name="message-uid" type="string"/>
149
148
  <optional>
150
149
  <parameter name="url" type="string"/>
151
150
  </optional>
@@ -160,7 +159,10 @@
160
159
  </parameter>
161
160
  </choice>
162
161
  </oneOrMore>
163
- <parameter name="fingerprint-with-producer-secret" type="string"/>
162
+ <optional>
163
+ <parameter name="message-uid" type="string"/>
164
+ <parameter name="fingerprint-with-producer-secret" type="string"/>
165
+ </optional>
164
166
  </message>
165
167
 
166
168
  <message name="overview">
@@ -5,11 +5,11 @@ require 'pp'
5
5
  twitter = Riddl::Client.interface("https://api.twitter.com/","twitter.xml")
6
6
 
7
7
  ### Base
8
- consumer_key = File.read(File.expand_path(File.dirname(__FILE__) + '/twitter.consumer_key')).strip
9
- consumer_secret = File.read(File.expand_path(File.dirname(__FILE__) + '/twitter.consumer_secret')).strip
10
- file_user_id = File.expand_path(File.dirname(__FILE__) + '/twitter.user_id')
11
- file_token = File.expand_path(File.dirname(__FILE__) + '/twitter.token')
12
- file_token_secret = File.expand_path(File.dirname(__FILE__) + '/twitter.token_secret')
8
+ consumer_key = File.read(File.expand_path(File.dirname(__FILE__) + '/.twitter.consumer_key')).strip
9
+ consumer_secret = File.read(File.expand_path(File.dirname(__FILE__) + '/.twitter.consumer_secret')).strip
10
+ file_user_id = File.expand_path(File.dirname(__FILE__) + '/.twitter.user_id')
11
+ file_token = File.expand_path(File.dirname(__FILE__) + '/.twitter.token')
12
+ file_token_secret = File.expand_path(File.dirname(__FILE__) + '/.twitter.token_secret')
13
13
 
14
14
  ### When token and secret already saved, skip this part
15
15
  if !File.exists?(file_token) && !File.exists?(file_token_secret)
@@ -4,11 +4,11 @@ require 'xml/smart'
4
4
  require 'pp'
5
5
 
6
6
  ### Base
7
- consumer_key = File.read(File.expand_path(File.dirname(__FILE__) + '/zotero.consumer_key')).strip
8
- consumer_secret = File.read(File.expand_path(File.dirname(__FILE__) + '/zotero.consumer_secret')).strip
9
- file_user_id = File.expand_path(File.dirname(__FILE__) + '/zotero.user_id')
10
- file_token = File.expand_path(File.dirname(__FILE__) + '/zotero.token')
11
- file_token_secret = File.expand_path(File.dirname(__FILE__) + '/zotero.token_secret') #}}}
7
+ consumer_key = File.read(File.expand_path(File.dirname(__FILE__) + '/.zotero.consumer_key')).strip
8
+ consumer_secret = File.read(File.expand_path(File.dirname(__FILE__) + '/.zotero.consumer_secret')).strip
9
+ file_user_id = File.expand_path(File.dirname(__FILE__) + '/.zotero.user_id')
10
+ file_token = File.expand_path(File.dirname(__FILE__) + '/.zotero.token')
11
+ file_token_secret = File.expand_path(File.dirname(__FILE__) + '/.zotero.token_secret') #}}}
12
12
 
13
13
  ### When token and secret already saved, skip this part #{{{
14
14
  if !File.exists?(file_token) && !File.exists?(file_token_secret)
@@ -145,7 +145,6 @@
145
145
  </message>
146
146
 
147
147
  <message name="details">
148
- <parameter name="message-uid" type="string"/>
149
148
  <optional>
150
149
  <parameter name="url" type="string"/>
151
150
  </optional>
@@ -160,7 +159,10 @@
160
159
  </parameter>
161
160
  </choice>
162
161
  </oneOrMore>
163
- <parameter name="fingerprint-with-producer-secret" type="string"/>
162
+ <optional>
163
+ <parameter name="message-uid" type="string"/>
164
+ <parameter name="fingerprint-with-producer-secret" type="string"/>
165
+ </optional>
164
166
  </message>
165
167
 
166
168
  <message name="overview">
@@ -154,7 +154,7 @@ module Riddl
154
154
  puts "XMPP support (#{@riddl_xmpp_jid}) active" if @riddl_xmpp_jid && @riddl_xmpp_pass && !http_only
155
155
  Process.daemon unless verbose
156
156
  ::Kernel::at_exit do
157
- @riddl_at_exit.call
157
+ @riddl_at_exit.call if @riddl_at_exit
158
158
  end
159
159
  begin
160
160
  EM.run do
@@ -262,7 +262,6 @@ module Riddl
262
262
  handler = @a[1]
263
263
  key = @r.last
264
264
 
265
- muid = @p.shift.value
266
265
  url = @p[0].name == 'url' ? @p.shift.value : nil
267
266
 
268
267
  # TODO check if message is valid (with producer secret)
@@ -21,15 +21,18 @@ module Riddl
21
21
  messages_result = ""
22
22
  description_result = ""
23
23
  description_xml_priv(result,messages,0)
24
+
25
+ result = XML::Smart.string("<resource>\n" + result + " </resource>")
24
26
  messages.each do |hash,mess|
25
27
  t = mess.content.dup
26
28
  name = mess.name
27
29
  name += '_' while names.include?(name)
30
+ result.find("//@*[.=#{hash}]").each { |e| p e; e.value = name }
28
31
  names << name
29
32
  t.root.attributes['name'] = name
30
33
  messages_result << t.root.dump + "\n"
31
34
  end
32
- XML::Smart.string("<description #{Riddl::Wrapper::COMMON} #{namespaces}>\n\n" + description_result + messages_result.gsub(/^/,' ') + "\n" + result + "\n</description>").to_s
35
+ XML::Smart.string("<description #{Riddl::Wrapper::COMMON} #{namespaces}>\n\n" + description_result + messages_result.gsub(/^/,' ') + "\n" + result.root.dump + "\n</description>").to_s
33
36
  #}}}
34
37
  end
35
38
  def description_xml_priv(result,messages,level,res=@resource)
@@ -243,23 +243,23 @@ module Riddl
243
243
  case m
244
244
  when Riddl::Wrapper::Description::RequestInOut
245
245
  messages[m.in.hash] ||= m.in
246
- result << "in=\"#{messages[m.in.hash].name}\""
246
+ result << "in=\"#{m.in.hash}\""
247
247
  unless m.out.nil?
248
248
  messages[m.out.hash] ||= m.out
249
- result << " out=\"#{messages[m.out.hash].name}\""
249
+ result << " out=\"#{m.out.hash}\""
250
250
  end
251
251
  when Riddl::Wrapper::Description::RequestStarOut
252
252
  result << "in=\"*\""
253
253
  unless m.out.nil?
254
254
  messages[m.out.hash] ||= m.out
255
- result << " out=\"#{messages[m.out.hash].name}\""
255
+ result << " out=\"#{m.out.hash}\""
256
256
  end
257
257
  when Riddl::Wrapper::Description::RequestPass
258
258
  messages[m.pass.hash] ||= m.pass
259
- result << "pass=\"#{messages[m.pass.hash].name}\""
259
+ result << "pass=\"#{m.pass.hash}\""
260
260
  when Riddl::Wrapper::Description::RequestTransformation
261
261
  messages[m.trans.hash] ||= m.trans
262
- result << "transformation=\"#{messages[m.trans.hash].name}\""
262
+ result << "transformation=\"#{m.trans.hash}\""
263
263
  end
264
264
  if m.custom.length > 0
265
265
  result << ">\n"
@@ -326,17 +326,19 @@ module Riddl
326
326
  messages = {}
327
327
  messages_result = ''
328
328
  collect = description_xml_string(messages," " * 4) + description_xml_string_sub(messages," " * 4)
329
+ collect = XML::Smart.string("<resource>\n" + collect + " </resource>")
329
330
 
330
331
  names = []
331
332
  messages.each do |hash,mess|
332
333
  t = mess.content.dup
333
334
  name = mess.name
334
335
  name += '_' while names.include?(name)
336
+ collect.find("//@*[.=#{hash}]").each { |e| p e; e.value = name }
335
337
  names << name
336
338
  t.root.attributes['name'] = name
337
339
  messages_result << t.root.dump + "\n"
338
340
  end
339
- XML::Smart.string("<description #{Riddl::Wrapper::COMMON} #{namespaces}>\n\n" + messages_result.gsub(/^/,' ') + "\n <resource>\n" + collect + " </resource>\n</description>").to_s
341
+ XML::Smart.string("<description #{Riddl::Wrapper::COMMON} #{namespaces}>\n\n" + messages_result.gsub(/^/,' ') + "\n " + collect.root.dump + "\n</description>").to_s
340
342
  #}}}
341
343
  end
342
344
 
@@ -145,7 +145,6 @@
145
145
  </message>
146
146
 
147
147
  <message name="details">
148
- <parameter name="message-uid" type="string"/>
149
148
  <optional>
150
149
  <parameter name="url" type="string"/>
151
150
  </optional>
@@ -160,7 +159,10 @@
160
159
  </parameter>
161
160
  </choice>
162
161
  </oneOrMore>
163
- <parameter name="fingerprint-with-producer-secret" type="string"/>
162
+ <optional>
163
+ <parameter name="message-uid" type="string"/>
164
+ <parameter name="fingerprint-with-producer-secret" type="string"/>
165
+ </optional>
164
166
  </message>
165
167
 
166
168
  <message name="overview">
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "riddl"
3
- s.version = "0.99.177"
3
+ s.version = "0.99.178"
4
4
  s.platform = Gem::Platform::RUBY
5
5
  s.license = "LGPL-3"
6
6
  s.summary = "restful interface description and declaration language: tools and client/server libs"
@@ -8,6 +8,7 @@ Gem::Specification.new do |s|
8
8
  s.description = "rest service interface definition, mixing, and evolution. supports mixed http and xmpp servers."
9
9
 
10
10
  s.files = Dir['{lib/ruby/riddl/ns/**/*,tools/**/*,ns/**/*,contrib/**/*,lib/ruby/riddl/**/*,examples/**/*}'] + %w(COPYING Rakefile riddl.gemspec README.rdoc TODO AUTHORS INSTALL)
11
+
11
12
  s.require_path = 'lib/ruby'
12
13
  s.extra_rdoc_files = ['README.rdoc']
13
14
  s.bindir = 'tools'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: riddl
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.99.177
4
+ version: 0.99.178
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juergen eTM Mangler
8
8
  autorequire:
9
9
  bindir: tools
10
10
  cert_chain: []
11
- date: 2015-01-14 00:00:00.000000000 Z
11
+ date: 2015-02-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: xml-smart
@@ -263,11 +263,7 @@ files:
263
263
  - examples/flickr/Exif/riddl.new.jpg
264
264
  - examples/flickr/Flickr/authenticate.rb
265
265
  - examples/flickr/Flickr/find.rb
266
- - examples/flickr/Flickr/flickr.frob
267
- - examples/flickr/Flickr/flickr.key
268
266
  - examples/flickr/Flickr/flickr.rb
269
- - examples/flickr/Flickr/flickr.secret
270
- - examples/flickr/Flickr/flickr.token
271
267
  - examples/flickr/Flickr/flickr.xml
272
268
  - examples/flickr/Flickr/public.rb
273
269
  - examples/flickr/Flickr/riddl.png
@@ -313,11 +309,6 @@ files:
313
309
  - examples/twitter/client.rb
314
310
  - examples/twitter/declaration.xml
315
311
  - examples/twitter/twitpic.xml
316
- - examples/twitter/twitter.consumer_key
317
- - examples/twitter/twitter.consumer_secret
318
- - examples/twitter/twitter.token
319
- - examples/twitter/twitter.token_secret
320
- - examples/twitter/twitter.user_id
321
312
  - examples/twitter/twitter.xml
322
313
  - examples/websocket/client.rb
323
314
  - examples/websocket/description.xml
@@ -336,11 +327,6 @@ files:
336
327
  - examples/zotero/README
337
328
  - examples/zotero/client.rb
338
329
  - examples/zotero/litlist.html
339
- - examples/zotero/zotero.consumer_key
340
- - examples/zotero/zotero.consumer_secret
341
- - examples/zotero/zotero.token
342
- - examples/zotero/zotero.token_secret
343
- - examples/zotero/zotero.user_id
344
330
  - examples/zotero/zotero.xml
345
331
  - lib/ruby/riddl/client.rb
346
332
  - lib/ruby/riddl/commonlogger.rb
@@ -1 +0,0 @@
1
- 72157622754311344-2420da30f5ba248b-204692
@@ -1 +0,0 @@
1
- ae99256c7589433e29b814ed34698bfa
@@ -1 +0,0 @@
1
- c50c9bb73b23752b
@@ -1 +0,0 @@
1
- 72157622749312846-cf81dadf0cc4b86d
@@ -1 +0,0 @@
1
- JUGRfvAcSIjxpJ13g96Fw
@@ -1 +0,0 @@
1
- fTV93ULm4PtKGTZL2YGE22vvwuwidDl9RdBkZC15Y
@@ -1 +0,0 @@
1
- 10154142-aYtQ7NhZ3ZXPoBhhDsnxRsNGVtH5C4DSNUEvGlsHP
@@ -1 +0,0 @@
1
- ei7HiWcL5D4z0gHXnJhlLiwQ5wuTU0fX8K0nccuzH0g
@@ -1 +0,0 @@
1
- 10154142-aYtQ7NhZ3ZXPoBhhDsnxRsNGVtH5C4DSNUEvGlsHP
@@ -1 +0,0 @@
1
- 689f0248cc74473141b6
@@ -1 +0,0 @@
1
- 5b542fd013944adf2b1a
@@ -1 +0,0 @@
1
- xbkypbe6eVfLozz51pkqvXzJ
@@ -1 +0,0 @@
1
- xbkypbe6eVfLozz51pkqvXzJ
@@ -1 +0,0 @@
1
- 2491