Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > tw.bbs.comp.sources > #19

jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_0_0_2_1_6__6120020200.rb

From YAMAGUTIseisei <seisei@hello.to>
Newsgroups tw.bbs.comp.sources, hk.test, japan.test
Subject jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_0_0_2_1_6__6120020200.rb
Followup-To tw.bbs.edu.computer-science
Date 2020-02-16 16:30 +0000
Organization X-PlsDntToRmsMatzYktJlgTtiRbistAnd: http://j.mp/2K8Eo4k?#__Sponsor_-_CellBE
Message-ID <r2bre8$6eu$1@dont-email.me> (permalink)
References (30 earlier) <5C8E192E.6010002@hello.to> <5CBC48AE.5090805@hello.to> <5CFCD132.7020504@hello.to> <5D513AF8.7040503@hello.to> <5DB58DA3.2040901@hello.to>

Cross-posted to 3 groups.

Followups directed to: tw.bbs.edu.computer-science

Show all headers | View raw


1536c
# GC.start		# g 	# antei ?
.
1532c
# GC.start		# g 
.
1527c
#  fib(20)
  fib(3)
#  3 + 382
.
1504c
#	fl.delete_at(n) && redo if fl[n] && fl[n].resume(n) && 0 == n
.
1492,1501c
#######        mn = 0 > fis[0] ? -1 : n
#	if fis[1].resume(n) && 0 <= fis[0]
#######	if fis[1].resume(mn) # && 0 <= fis[0]
#	end

#      ise[i_i_d].reject!.with_index { |fis, n|
      ise[i_i_d].delif_c(1) { |fis, n|
#        n = 0 > fis[0] ? -1 : n
        0 > fis[0] && n = -1
#	fis[1].resume(n) && 0 <= fis[0]
	fis[1].resume(n)
      }

.
1490d
1481,1487c
#	  if 0 <= pfl[0]
#	    ise[i_i_f]<< fls(pfl[0])	# p 
#	  end
#	  true
.
1479d
1473,1477c
      ise[i_i_s].reject! { |pfl|	# Inspired by : RobertDoggett ? http://microware.com/# , Professor TAKAZAWA Yosimitu http://mu.ice.uec.ac.jp/~takazawa/
#     ise[i_i_s].delif_c(1) { |pfl|
.
1471c
#######	if pfl
#######	  ise[i_i_d]<< [pfl[0], isfl(pfl[1])]	# p 
#	  if 0 <= pfl[0]
#	    ise[i_i_f]<< fls(pfl[0])	# p 
#	  end
.
1463c
	stack.p = rg['sp']
.
1445a

#	rg['ctr', 1] = rg['ctr', 1].abs		# cp 
.
1441,1444c
#      if ise[i_i_f].empty?
      if ise[i_i_d].empty? || (1 == ise[i_i_d].size && 0 > ise[i_i_d][-1][0])
.
1430,1431c

#	  rg['ctr', 1] *= -1	# kakezan
	  rg.ps(-rg.pg)		# cp 

#	  if ifj.(rg['sym'])
#	    stu.(rg['pc'] + imem.getarg_sbx(rg['cop'], rg['sym'])	# c 
#	    stu.(rg['pc'] + 1, rg['sym', -1])	# c 
#	  end
.
1421,1427c
#	  pco[0] = rg['pc'] if ifj.(rg['sym'])	# p 
	  (pco[0] = rg['pc']; pctj<< pco[0] + 1) if ifj.(rg['sym'])	# p 	# c 
.
1416,1417c
#	  ist.call
#	  ist.(rg['pc']) if istm.call	# c 
	  ist.(rg['pc']) if pctj.pop != rg['pc'] && istm.call	# c 
.
1414d
1409,1410c
#      if 0 <= rg['ctr', 1]
#	opg.call
	opg.(rg['pc'])		# c 	# cp 
#	@@opg.(irep, rg, imem)	# c 
.
1405c
#      }
.
1397,1403c
#      0.step(0) { |n|
#	ise[i_i_f].delete_at(n) && redo if ise[i_i_f][n] && ise[i_i_f][n].resume(n) && 0 == n
.
1390,1391c
#    ifj = -> (sym) {?J == sym.to_s[0]}		# l 	# q 
#    ifs = -> (sym) {[:ENTER, :SEND, :RETURN, :NOP].include?(sym)}	# l 
    ifj = ->(sy) {?J == sy.to_s[0]}	# l 	# q 
    ifs = ->(sy) {[:ENTER, :SEND, :RETURN, :NOP].include?(sy)}	# l 

#   stu = ->(pcl, sy) {		# l 
#     opg.(pcl)			# c 
#     ist.(pcl) unless (ifj.(sy) || ifs.(sy))	# c 3 
#     pcoj.call
#   }
.
1383,1387c
      true
    }
    ist = ->(pcl, po = 0) {	# l 
#      ise[i_i_s]<< [0 > rg['ctr', 1] ? -rg['pc'] : rg['pc'], rg.to_a]	# p 	# cp 
#      ise[i_i_s]<< [0 > rg.pg ? -pcl : pcl, rg.to_a]		# p 	# cp 
      ise[i_i_s]<< [0 > rg.pg ? -pcl : pcl, Rg.new(rg.to_a)]	# p 	# cp 
#     ise[i_i_s]<< [0 > rg['ctr', 1] ? -pcl : pcl, rg.ss(po)]	# p 	# cp 
.
1381c
#	pfl = nil
.
1378,1379c
	  ise[i_i_d]<< pfl			# p 
.
1373,1375c
	    ise[i_i_d]<< pfl			# p 
#	    next
	    next false
.
1370,1371c
#	    ise[i_i_f]<< fls(pcf.abs)		# p 	# cp 
.
1362,1366c
    istm = -> {		# l 
#      unless ise[i_i_d].empty?
#	pfl = ise[i_i_d].pop
      if pfl = ise[i_i_d].pop
.
1354,1356c
#   @@opg = ->(irep, rg, imem) {	# l 
#    opg = -> {				# l 
    opg = ->(pcl) {			# l 
#      c, sym = @@opf.(irep, rg['pc'], imem)	# c 
      c, sym = @@opf.(irep, pcl)		# c 
.
1328c
	  callinfo.p -= 1
.
1322c
	  callinfo.p -= 1
.
1315c
	  callinfo.p -= 1
.
1312d
1308d
1306c
	if 0 == callinfo.p
.
1295,1296c
#    rg = Rg.new([['ctr', 1], ['pc', @pc], ['sp', @sp], ['cop'], ['sym']])
    rg = Rg.new([['pc', @pc], ['sp', @sp], ['cop'], ['sym']])
.
1293c
#    i_i_f = 0; i_i_d = 1; i_i_s = 2
    i_i_d = 0; i_i_u = 1; i_i_s = 2
.
1289c
    pctj = []
.
1285,1287c
#    fl = []
.
1262,1268c
#	r = (true == fb.resume ? true : false) # && r
	ri ||= (true == fb || true == fb.resume ? fb = true : false)
	m = Fiber.yield ri && rf
#	Fiber.yield r
	rf = fl.resume(m.abs) if 0 <= m # || 0 <= pc
.
1258,1259c
    fl = fls(pc.abs) # if 0 <= pc	# cp 
#    r = false
    ri, rf = false
.
1254,1256c
#   rg.to_s		# fuguai taisaku mruby 70410200
#    rg = Rg.new rg
    pc = rg['pc']
    sl = @Slp
#    pc = rg.assoc('pc')[1]
.
1249c
#    sym = OPTABLE_SYM[imem.get_opcode(cop)]
    sym = OPTABLE_SYM[(rou = @@Rou).get_opcode(cop)]
.
1241d
1207c
	callinfo.p += 1
.
1202c
	callinfo.p += 1
.
1197c
	callinfo.p += 1
.
1169d
1158d
1140,1141d
1132c
#	sp = [sp].flatten
	sp = [sb].flatten
.
1117c
#    Fiber.new {	##
    Fiber.new { |thi = 0|	##
.
1115c
#    thi = 0	##
.
1109a
#	  kfv.empty? lopa.push(k, fv) : lopa += kfv
.
1108c
#	  k && lopa.push(*fv)
	  lopa.push(*fv)
.
1104d
1097,1099c
#	      fv[oi] = imem.ta(fv[oi], cop) if oi <= ht = fv.hgt
	      fv[oi] = ta.(fv[oi]) if oi <= ht = fv.hgt		# c 
#	      fv[oi] ? (fv = [thl[oi], fv[oi]]) : k = nil
	      fv = fv[oi] ? [thl[oi], fv[oi]] : []
.
1091,1093c
#	      fv = [thl[oi], imem.ta(fv[oi], cop), thl[oi + 1], []]	# t 
	      fv = [thl[oi], ta.(fv[oi]), thl[oi + 1], []]	# c t 
.
1080a
    sb = sp
    ta = ->(ta) { 	# l 
      [ta[0] || (sb = ~ [sp].flatten[0]; :getarg_a), ta[1] || cop][
	0 .. ta[2] || 1] }
.
1073,1074c
#     printf("Unkown code %s \n", OPTABLE_SYM[@Rou.get_opcode(cop)])
.
1062,1063c
#    pcabs = pc.abs	# cp 
#    pc1 = pcabs + 1	# cp 
    pc1 = (pcabs = pc.abs) + 1	# cp 

.
1059d
1047c
#		pr || (pr, sy, mt = imem.fml('st', sym)[1 .. -1])
		pr || (pr, sy = imem.fml('st', sym)[1 .. -1]
			?_ == pr.to_s[1] || (mt, pr = [pr, imem.l__s__send]))	# q 
.
1043,1045d
1033,1034c

#	  if flg[0] && 0 > (sp || s.p = sp = pl[i_sp].flatten[0])
#	  flg[0] && s.ps([pl[i_sp]].flatten[0]) { |i|	# && 0 <= sp
	  flg[0] && s.ps(pl[i_sp].flatten[0]) { |i|	# && 0 <= sp
	    0 > i ? (r[1] = r[0]; flg[1] = true; ~ i) : i
	  }
.
1027d
1020d
991,995c
#	  s.s.hgt <= mx && mx = s.s.hgt
#	  s.s.hgt <= mx = 0xf && mx = s.s.hgt
#	s.size < mx = 0xf && mx = s.size - 1
#	(mx = 0xf) > (mx |= s.size << 7) >> 7 && mx = (mx >> 7) - 1; mx &= 0x7f		# .b 
###	(mx = 0xf) > (mx |= s.size - 1 << 8) >> 8 && mx >>= 8; mx &= 0xff		# .b 
	(rs[1] = s.size) < mx = 0xf && mx = rs[1] - 1
#	sz.step(mx) { |n| plr<< lm.(isr0, s[n])}	# p c 
	(sz .. mx).each { |n| plr<< lm.(s[n])}	# p c 
#	s.s.empty? ? @Slp.slp(0) : plr += lm.(isr0, s[plr.size, 0xf])		# c 
.
981c
#    mx = 0xf
.
974,975c
#     sp, sz, isr0, r0, r1, lm, sy = [][0]
#    pl, sp, mt, isr0, r, r0, r1, sym, sy, pr, sz = nil
    pl, mt, isr0, r, r0, r1, sym, sy, pr, sz = nil
.
968d
952,954c
    r = [pl[lpl.afl(thl[0], ?i)]]	# q 
    r1 = pl[lpl.afl(thl[1], ?i)]	# q 
    r<< r1 if knid(pl[lpl.afl('ctr', ?i)][0], :Array) && lpl.ckth(r1, 3)	# p 	# q 

#   r.map { |v| v[1] = v[-1]}
#   r = r.map { |v| v[1] = v[-1]}	# higokan ? mruby 70410200
#    [pl[lpl.afl('sym', ?i)].to_sym,	# q 
#	*[r, r.map { |v| lpl.ckth(v, 1)}].map { |v| [v[0], v[-1]]}]
.
950d
932,933d
921c
    # 3080410200 : 5x2 ok ( gc ) : monami-ya.mrb 8270410200 813e2af8	# www.monami-ya.jp
.
868c
#    GC.start	# g 	# antei ?
.
768,850d
748,749c
#    @a.assoc('ctr')[1]
    @p
.
743,744c
#    @a.assoc('ctr')[1] = i
    @p = i
.
739c
    @a.assoc(k)[i] = v
.
715a
# def ss(po = 0, ctr = nil)
#   @a.map { |v| k = v[0]
#     if ! 'ctr' == k # v[0]
#	v = [k, v[self.assoc('ctr')[1]]]
#	v[1] += po if 'pc' == k
#     end
#     v
#   }
# end

.
682c
#   @p = i
#   (i == @p) && return(i)	# higokan ? mruby 70410200
    return i if i == @p
#   @p = 0 > i ? ~ i : i
    @p = b ? yield(i) : i
.
678,679c
# def ps(i)
  def ps(i, &b)
#   id = self.object_id
.
672,674c
# def pg() @p	   end
# def pi() @p += 1 end
# def pd() @p -= 1 end
.
603c
#     GC.start	# g 	# antei ?
.
596,597d
568,569c
#	arf ||= ckth(th[idx], 2)
#	th[idx] = pl_eg(pc, thl[idx]) if arf
	th[idx] = pl_eg(pc, thl[idx]) if arf ||= ckth(th[idx], 2)
.
551,552c
#   idx = 0    ##
    th = ((idx = 0) ... thl.size).map { |v| pl_eg(pc, thl[v])}
    flg = false
.
549d
546d
519,522c
#  def send(*op)
##    knid(op[0], :Numeric) ? op.inject(:+) : (rou = ROU).send(*op)
#    case op[0] when Numeric then op.inject else (rou = ROU).send(*op) end
##   op.inject(knid(op[0], :Numeric) ? :+ : '(rou = ROU).send')
  def send(*a)
    case a[0] when Numeric then a.inject else (rou = ROU).send(*a) end
#   a.inject(knid(a[0], :Numeric) ? :+ : '(rou = ROU).send')
.
466,468c
      'ctr' == k && ! knid(v, :Array) ? pl[i]<< v : pl[i] = v	# p 
.
464d
449,450c
  def pl_eg(n = 0, k)
.
438,439c
    pl
#   a.empty? ? pl : a.map { |a| pl.afl(a, self)}
.
426,428c
  def pl_g(n = 0)
.
322,329c
# def s__i_pool_r0( *a) a[@@I_s__i].pool[    a[@@I_s__r0]]	end
# def s__i_syms_r0( *a) a[@@I_s__i].syms[    a[@@I_s__r0]]	end
.
263c
    @@fml.(lb).assoc(sym)		# c 
#   (f = @@fml).(lb).assoc(sym)		# c 
.
260c
  def initialize
    @l__s__send = @@l__s__send
  end

#  def ta(l, cop) [l[0] || :getarg_a, l[1] || cop][0 .. l[2] || 1] end
.
240,243c
#      [:MOVE,	  :__sr0],	[:LOADL,   :__send, nil, :pool],
#      [:LOADI,	  :__r0 ],	[:LOADSYM, :__send, nil, :syms],
      [:MOVE,	  :__sr0],	[:LOADL,   :pool],
      [:LOADI,	  :__r0 ],	[:LOADSYM, :syms],
.
237a
  attr_accessor :l__s__send
  @@l__s__send = :s__send

.
220,222c
    GC.disable		# g 
.
198,199c
    GC.disable		# g 
.
178d
171,174d
145,146c
#   t += 1 - (t <=> 0)	# 1 <=> t
.
125,129c
#      c = (n = 0) - 1
#      while i > c += 1	# c += 1 < i # -e:1: non float value (TypeError) ( monami-ya.mrb:60510200 mruby:70410200 )
#	a[n] && yield(a[n], c) && (a.delete_at(n); redo); n += 1
##	(v = a[n]) && yield(v, c) && a.delete_at(n) || n += 1
      n = 0
      c = -i - 1
      while 0 > c += 1	# c += 1 < i # -e:1: non float value (TypeError) ( monami-ya.mrb:60510200 mruby:70410200 )
	a[n] && yield(a[n], c + i) && (a.delete_at(n); redo); n += 1
#	(v = a[n]) && yield(v, c + i) && a.delete_at(n) || n += 1
.
25,26c
# NSL_ = 6309	# nanosleep()
NSL_ = 10065	# nanosleep()
.
17a
	:s__send,	:l__s__send,
.



-- 
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )
http://hello.to/seisei/	mailto:seisei@.68..net
heiwa furiisekkusu 1tu

Back to tw.bbs.comp.sources | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_7_0_6_3_0__0360710200.rb ( Was : Re: jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_6_0_7_0_7__7070610200.rb ) YAMAGUTIseisei <seisei@hello.to> - 2017-08-08 03:18 +0000
  jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_7_1_0_0_1__1001710200.rb YAMAGUTIseisei <seisei@x68k.net> - 2017-10-01 12:15 +0000
    jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_7_1_2_3_1__1321710200.rb YAMAGUTIseisei <seisei@x68k.net> - 2017-12-31 12:57 +0000
      jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_8_0_2_0_4__4020810200.rb YAMAGUTIseisei <seisei@hello.to> - 2018-02-04 10:52 +0000
        jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_8_0_4_0_1__1040810200.rb YAMAGUTIseisei <seisei@hello.to> - 2018-04-01 13:24 +0000
          jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_8_0_5_2_0__0250810200.rb YAMAGUTIseisei <seisei@hello.to> - 2018-05-20 12:21 +0000
            jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_8_0_7_0_1__1070810200.rb YAMAGUTIseisei <seisei@hello.to> - 2018-07-01 11:18 +0000
              jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_8_0_9_3_0__0390810200.rb YAMAGUTIseisei <seisei@hello.to> - 2018-09-30 11:48 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_8_1_2_1_6__6121810200.rb YAMAGUTIseisei <seisei@hello.to> - 2018-12-16 09:16 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_9_0_2_1_0__0120910200.rb YAMAGUTIseisei <seisei@hello.to> - 2019-02-10 13:16 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_9_0_3_1_7__7130910200.rb YAMAGUTIseisei <seisei@hello.to> - 2019-03-17 09:53 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_9_0_4_2_1__1240910200.rb YAMAGUTIseisei <seisei@hello.to> - 2019-04-21 10:40 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_9_0_6_0_9__9060910200.rb YAMAGUTIseisei <seisei@hello.to> - 2019-06-09 09:28 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_9_0_8_1_1__1180910200.rb YAMAGUTIseisei <seisei@hello.to> - 2019-08-12 10:10 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_9_1_0_2_7__7201910200.rb YAMAGUTIseisei <seisei@hello.to> - 2019-10-27 12:29 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_1_9_1_2_1_5__5121910200.rb YAMAGUTIseisei <seisei@hello.to> - 2019-12-15 12:24 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_0_0_2_1_6__6120020200.rb YAMAGUTIseisei <seisei@hello.to> - 2020-02-16 16:30 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_0_0_4_1_9__9140020200.rb YAMAGUTIseisei <seisei@hello.to> - 2020-04-19 16:59 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_0_0_7_0_5__5070020200.rb YAMAGUTIseisei <seisei@hello.to> - 2020-07-05 12:08 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_0_1_0_2_5__5201020200.rb YAMAGUTIseisei <seisei@hello.to> - 2020-10-25 11:16 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_1_0_1_1_0__0110120200.rb YAMAGUTIseisei <seisei@hello.to> - 2021-01-10 10:34 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_1_0_3_2_8_8230120200.rb YAMAGUTIseisei <seisei@hello.to> - 2021-03-28 15:48 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_1_0_4_2_4__4240120200.rb YAMAGUTIseisei <seisei@hello.to> - 2021-04-25 00:23 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_1_0_7_1_3__3170120200.rb YAMAGUTIseisei <seisei@hello.to> - 2021-07-13 12:15 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_1_1_0_0_8__8001120200.rb YAMAGUTIseisei <seisei@hello.to> - 2021-10-08 09:10 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_2_0_2_0_6__6020220200.rb YAMAGUTIseisei <seisei@hello.to> - 2022-02-06 15:29 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_2_0_3_0_6__6030220200.rb YAMAGUTIseisei <seisei@hello.to> - 2022-03-06 10:14 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_2_0_4_0_4__4040220200.rb YAMAGUTIseisei <seisei@hello.to> - 2022-04-04 15:20 +0000
                Debug ? ( Was : jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_2_0_4_0_4__4040220200.rb ) YAMAGUTIseisei <seisei@hello.to> - 2022-04-24 08:27 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_2_0_6_2_6__6260220200.rb YAMAGUTIseisei <seisei@hello.to> - 2022-06-26 14:52 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_2_1_0_1_7__7101220200.rb YAMAGUTIseisei <seisei@hello.to> - 2022-10-17 22:10 +0000
                jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_3_0_6_1_7__7160320200.rb "YAMAGUTIseisei(MasinZenmetu)" <seisei@hello.to> - 2024-01-07 14:44 +0000
          DoNotOpen:SJIS : Re : jit-1_-_github__ysei~mruby-meta-circular-heiretu_-_nightly_-_2_0_2_0_0_7_0_5__5070020200.rb YAMAGUTIseisei <seisei@hello.to> - 2020-07-12 14:55 +0000

csiph-web