Skip to content

Commit 904f9d6

Browse files
authored
Merge pull request #5721 from martin-frbg/lapack1020
Implement ?LARF1F and ?ORM2R (Reference-LAPACK PRs 1019/1020/1196)
2 parents d26960a + a5d0f89 commit 904f9d6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

120 files changed

+7970
-1780
lines changed

cmake/lapack.cmake

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ set(SLASRC
7171
slaqr0.f slaqr1.f slaqr2.f slaqr3.f slaqr4.f slaqr5.f
7272
slaqtr.f slar1v.f slar2v.f ilaslr.f ilaslc.f
7373
slarf.f slarfb.f slarfb_gett.f slarfg.f slarfgp.f slarft.f slarfx.f slarfy.f slargv.f
74-
slarrv.f slartv.f
74+
slarf1f.f slarf1l.f slarrv.f slartv.f
7575
slarz.f slarzb.f slarzt.f slasy2.f
7676
slasyf.f slasyf_rook.f slasyf_rk.f slasyf_aa.f
7777
slatbs.f slatdf.f slatps.f slatrd.f slatrs.f slatrz.f
@@ -178,6 +178,7 @@ set(CLASRC
178178
claqz0.f claqz1.f claqz2.f claqz3.f
179179
claqsp.f claqsy.f clar1v.f clar2v.f ilaclr.f ilaclc.f
180180
clarf.f clarfb.f clarfb_gett.f clarfg.f clarfgp.f clarft.f
181+
clarf1f.f clarf1l.f
181182
clarfx.f clarfy.f clargv.f clarnv.f clarrv.f clartg.f90 clartv.f
182183
clarz.f clarzb.f clarzt.f clascl.f claset.f clasr.f classq.f90
183184
clasyf.f clasyf_rook.f clasyf_rk.f clasyf_aa.f
@@ -262,7 +263,7 @@ set(DLASRC
262263
dlaqr0.f dlaqr1.f dlaqr2.f dlaqr3.f dlaqr4.f dlaqr5.f
263264
dlaqtr.f dlar1v.f dlar2v.f iladlr.f iladlc.f
264265
dlarf.f dlarfb.f dlarfb_gett.f dlarfg.f dlarfgp.f dlarft.f dlarfx.f dlarfy.f
265-
dlargv.f dlarrv.f dlartv.f
266+
dlarf1f.f dlarf1l.f dlargv.f dlarrv.f dlartv.f
266267
dlarz.f dlarzb.f dlarzt.f dlasy2.f
267268
dlasyf.f dlasyf_rook.f dlasyf_rk.f dlasyf_aa.f
268269
dlatbs.f dlatdf.f dlatps.f dlatrd.f dlatrs.f dlatrz.f
@@ -371,7 +372,7 @@ set(ZLASRC
371372
zlaqr0.f zlaqr1.f zlaqr2.f zlaqr3.f zlaqr4.f zlaqr5.f
372373
zlaqsp.f zlaqsy.f zlar1v.f zlar2v.f ilazlr.f ilazlc.f
373374
zlarcm.f zlarf.f zlarfb.f zlarfb_gett.f
374-
zlarfg.f zlarfgp.f zlarft.f
375+
zlarfg.f zlarfgp.f zlarft.f zlarf1f.f zlarf1l.f
375376
zlarfx.f zlarfy.f zlargv.f zlarnv.f zlarrv.f zlartg.f90 zlartv.f
376377
zlarz.f zlarzb.f zlarzt.f zlascl.f zlaset.f zlasr.f
377378
zlassq.f90 zlasyf.f zlasyf_rook.f zlasyf_rk.f zlasyf_aa.f
@@ -575,7 +576,7 @@ set(SLASRC
575576
slaqr0.c slaqr1.c slaqr2.c slaqr3.c slaqr4.c slaqr5.c
576577
slaqtr.c slar1v.c slar2v.c ilaslr.c ilaslc.c
577578
slarf.c slarfb.c slarfb_gett.c slarfg.c slarfgp.c slarft.c slarfx.c slarfy.c slargv.c
578-
slarrv.c slartv.c
579+
slarf1f.c slarf1l.c slarrv.c slartv.c
579580
slarz.c slarzb.c slarzt.c slasy2.c
580581
slasyf.c slasyf_rook.c slasyf_rk.c slasyf_aa.c
581582
slatbs.c slatdf.c slatps.c slatrd.c slatrs.c slatrz.c
@@ -681,6 +682,7 @@ set(CLASRC
681682
claqr0.c claqr1.c claqr2.c claqr3.c claqr4.c claqr5.c
682683
claqsp.c claqsy.c clar1v.c clar2v.c ilaclr.c ilaclc.c
683684
clarf.c clarfb.c clarfb_gett.c clarfg.c clarfgp.c clarft.c
685+
clarf1f.c clarf1l.c
684686
clarfx.c clarfy.c clargv.c clarnv.c clarrv.c clartg.c clartv.c
685687
clarz.c clarzb.c clarzt.c clascl.c claset.c clasr.c classq.c
686688
clasyf.c clasyf_rook.c clasyf_rk.c clasyf_aa.c
@@ -764,7 +766,7 @@ set(DLASRC
764766
dlaqr0.c dlaqr1.c dlaqr2.c dlaqr3.c dlaqr4.c dlaqr5.c
765767
dlaqtr.c dlar1v.c dlar2v.c iladlr.c iladlc.c
766768
dlarf.c dlarfb.c dlarfb_gett.c dlarfg.c dlarfgp.c dlarft.c dlarfx.c dlarfy.c
767-
dlargv.c dlarrv.c dlartv.c
769+
dlarf1f.c dlarf1l.c dlargv.c dlarrv.c dlartv.c
768770
dlarz.c dlarzb.c dlarzt.c dlasy2.c
769771
dlasyf.c dlasyf_rook.c dlasyf_rk.c dlasyf_aa.c
770772
dlatbs.c dlatdf.c dlatps.c dlatrd.c dlatrs.c dlatrz.c
@@ -871,7 +873,7 @@ set(ZLASRC
871873
zlaqhb.c zlaqhe.c zlaqhp.c zlaqp2.c zlaqp2rk.c zlaqp3rk.c zlaqps.c zlaqsb.c
872874
zlaqr0.c zlaqr1.c zlaqr2.c zlaqr3.c zlaqr4.c zlaqr5.c
873875
zlaqsp.c zlaqsy.c zlar1v.c zlar2v.c ilazlr.c ilazlc.c
874-
zlarcm.c zlarf.c zlarfb.c zlarfb_gett.c
876+
zlarcm.c zlarf.c zlarfb.c zlarfb_gett.c zlarf1f.c zlarf1l.c
875877
zlarfg.c zlarfgp.c zlarft.c
876878
zlarfx.c zlarfy.c zlargv.c zlarnv.c zlarrv.c zlartg.c zlartv.c
877879
zlarz.c zlarzb.c zlarzt.c zlascl.c zlaset.c zlasr.c

lapack-netlib/SRC/Makefile

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ SLASRC_O = \
155155
slaqr0.o slaqr1.o slaqr2.o slaqr3.o slaqr4.o slaqr5.o \
156156
slaqtr.o slar1v.o slar2v.o ilaslr.o ilaslc.o \
157157
slarf.o slarfb.o slarfb_gett.o slarfg.o slarfgp.o slarft.o slarfx.o slarfy.o slargv.o \
158-
slarrv.o slartv.o \
158+
slarf1f.o slarf1l.o slarrv.o slartv.o \
159159
slarz.o slarzb.o slarzt.o slaswp.o slasy2.o slasyf.o slasyf_rook.o \
160160
slasyf_rk.o \
161161
slatbs.o slatdf.o slatps.o slatrd.o slatrs.o slatrz.o \
@@ -271,6 +271,7 @@ CLASRC_O = \
271271
claqsp.o claqsy.o clar1v.o clar2v.o ilaclr.o ilaclc.o \
272272
claqz0.o claqz1.o claqz2.o claqz3.o \
273273
clarf.o clarfb.o clarfb_gett.o clarfg.o clarft.o clarfgp.o \
274+
clarf1f.o clarf1l.o \
274275
clarfx.o clarfy.o clargv.o clarnv.o clarrv.o clartg.o clartv.o \
275276
clarz.o clarzb.o clarzt.o clascl.o claset.o clasr.o classq.o \
276277
claswp.o clasyf.o clasyf_rook.o clasyf_rk.o clasyf_aa.o \
@@ -364,7 +365,7 @@ DLASRC_O = \
364365
dlaqr0.o dlaqr1.o dlaqr2.o dlaqr3.o dlaqr4.o dlaqr5.o \
365366
dlaqtr.o dlar1v.o dlar2v.o iladlr.o iladlc.o \
366367
dlarf.o dlarfb.o dlarfb_gett.o dlarfg.o dlarfgp.o dlarft.o dlarfx.o dlarfy.o \
367-
dlargv.o dlarrv.o dlartv.o \
368+
dlarf1f.o dlarf1l.o dlargv.o dlarrv.o dlartv.o \
368369
dlarz.o dlarzb.o dlarzt.o dlaswp.o dlasy2.o \
369370
dlasyf.o dlasyf_rook.o dlasyf_rk.o \
370371
dlatbs.o dlatdf.o dlatps.o dlatrd.o dlatrs.o dlatrz.o dlauu2.o \
@@ -478,7 +479,7 @@ ZLASRC_O = \
478479
zlaqsp.o zlaqsy.o zlar1v.o zlar2v.o ilazlr.o ilazlc.o \
479480
zlaqz0.o zlaqz1.o zlaqz2.o zlaqz3.o \
480481
zlarcm.o zlarf.o zlarfb.o zlarfb_gett.o \
481-
zlarfg.o zlarft.o zlarfgp.o \
482+
zlarfg.o zlarft.o zlarfgp.o zlarf1f.o zlarf1l.o \
482483
zlarfx.o zlarfy.o zlargv.o zlarnv.o zlarrv.o zlartg.o zlartv.o \
483484
zlarz.o zlarzb.o zlarzt.o zlascl.o zlaset.o zlasr.o \
484485
zlassq.o zlaswp.o zlasyf.o zlasyf_rook.o zlasyf_rk.o zlasyf_aa.o \

lapack-netlib/SRC/cgebd2.f

Lines changed: 15 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,13 @@
55
* Online html documentation available at
66
* http://www.netlib.org/lapack/explore-html/
77
*
8-
*> \htmlonly
98
*> Download CGEBD2 + dependencies
109
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/cgebd2.f">
1110
*> [TGZ]</a>
1211
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/cgebd2.f">
1312
*> [ZIP]</a>
1413
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/cgebd2.f">
1514
*> [TXT]</a>
16-
*> \endhtmlonly
1715
*
1816
* Definition:
1917
* ===========
@@ -132,7 +130,7 @@
132130
*> \author Univ. of Colorado Denver
133131
*> \author NAG Ltd.
134132
*
135-
*> \ingroup complexGEcomputational
133+
*> \ingroup gebd2
136134
* @precisions normal c -> s d z
137135
*
138136
*> \par Further Details:
@@ -187,6 +185,7 @@
187185
*>
188186
* =====================================================================
189187
SUBROUTINE CGEBD2( M, N, A, LDA, D, E, TAUQ, TAUP, WORK, INFO )
188+
IMPLICIT NONE
190189
*
191190
* -- LAPACK computational routine --
192191
* -- LAPACK is a software package provided by Univ. of Tennessee, --
@@ -203,16 +202,15 @@ SUBROUTINE CGEBD2( M, N, A, LDA, D, E, TAUQ, TAUP, WORK, INFO )
203202
* =====================================================================
204203
*
205204
* .. Parameters ..
206-
COMPLEX ZERO, ONE
207-
PARAMETER ( ZERO = ( 0.0E+0, 0.0E+0 ),
208-
$ ONE = ( 1.0E+0, 0.0E+0 ) )
205+
COMPLEX ZERO
206+
PARAMETER ( ZERO = ( 0.0E+0, 0.0E+0 ) )
209207
* ..
210208
* .. Local Scalars ..
211209
INTEGER I
212210
COMPLEX ALPHA
213211
* ..
214212
* .. External Subroutines ..
215-
EXTERNAL CLACGV, CLARF, CLARFG, XERBLA
213+
EXTERNAL CLACGV, CLARF1F, CLARFG, XERBLA
216214
* ..
217215
* .. Intrinsic Functions ..
218216
INTRINSIC CONJG, MAX, MIN
@@ -246,13 +244,13 @@ SUBROUTINE CGEBD2( M, N, A, LDA, D, E, TAUQ, TAUP, WORK, INFO )
246244
CALL CLARFG( M-I+1, ALPHA, A( MIN( I+1, M ), I ), 1,
247245
$ TAUQ( I ) )
248246
D( I ) = REAL( ALPHA )
249-
A( I, I ) = ONE
250247
*
251248
* Apply H(i)**H to A(i:m,i+1:n) from the left
252249
*
253250
IF( I.LT.N )
254-
$ CALL CLARF( 'Left', M-I+1, N-I, A( I, I ), 1,
255-
$ CONJG( TAUQ( I ) ), A( I, I+1 ), LDA, WORK )
251+
$ CALL CLARF1F( 'Left', M-I+1, N-I, A( I, I ), 1,
252+
$ CONJG( TAUQ( I ) ), A( I, I+1 ), LDA,
253+
$ WORK )
256254
A( I, I ) = D( I )
257255
*
258256
IF( I.LT.N ) THEN
@@ -265,12 +263,11 @@ SUBROUTINE CGEBD2( M, N, A, LDA, D, E, TAUQ, TAUP, WORK, INFO )
265263
CALL CLARFG( N-I, ALPHA, A( I, MIN( I+2, N ) ),
266264
$ LDA, TAUP( I ) )
267265
E( I ) = REAL( ALPHA )
268-
A( I, I+1 ) = ONE
269266
*
270267
* Apply G(i) to A(i+1:m,i+1:n) from the right
271268
*
272-
CALL CLARF( 'Right', M-I, N-I, A( I, I+1 ), LDA,
273-
$ TAUP( I ), A( I+1, I+1 ), LDA, WORK )
269+
CALL CLARF1F( 'Right', M-I, N-I, A( I, I+1 ), LDA,
270+
$ TAUP( I ), A( I+1, I+1 ), LDA, WORK )
274271
CALL CLACGV( N-I, A( I, I+1 ), LDA )
275272
A( I, I+1 ) = E( I )
276273
ELSE
@@ -290,13 +287,12 @@ SUBROUTINE CGEBD2( M, N, A, LDA, D, E, TAUQ, TAUP, WORK, INFO )
290287
CALL CLARFG( N-I+1, ALPHA, A( I, MIN( I+1, N ) ), LDA,
291288
$ TAUP( I ) )
292289
D( I ) = REAL( ALPHA )
293-
A( I, I ) = ONE
294290
*
295291
* Apply G(i) to A(i+1:m,i:n) from the right
296292
*
297293
IF( I.LT.M )
298-
$ CALL CLARF( 'Right', M-I, N-I+1, A( I, I ), LDA,
299-
$ TAUP( I ), A( I+1, I ), LDA, WORK )
294+
$ CALL CLARF1F( 'Right', M-I, N-I+1, A( I, I ), LDA,
295+
$ TAUP( I ), A( I+1, I ), LDA, WORK )
300296
CALL CLACGV( N-I+1, A( I, I ), LDA )
301297
A( I, I ) = D( I )
302298
*
@@ -309,13 +305,12 @@ SUBROUTINE CGEBD2( M, N, A, LDA, D, E, TAUQ, TAUP, WORK, INFO )
309305
CALL CLARFG( M-I, ALPHA, A( MIN( I+2, M ), I ), 1,
310306
$ TAUQ( I ) )
311307
E( I ) = REAL( ALPHA )
312-
A( I+1, I ) = ONE
313308
*
314309
* Apply H(i)**H to A(i+1:m,i+1:n) from the left
315310
*
316-
CALL CLARF( 'Left', M-I, N-I, A( I+1, I ), 1,
317-
$ CONJG( TAUQ( I ) ), A( I+1, I+1 ), LDA,
318-
$ WORK )
311+
CALL CLARF1F( 'Left', M-I, N-I, A( I+1, I ), 1,
312+
$ CONJG( TAUQ( I ) ), A( I+1, I+1 ), LDA,
313+
$ WORK )
319314
A( I+1, I ) = E( I )
320315
ELSE
321316
TAUQ( I ) = ZERO

lapack-netlib/SRC/cgehd2.f

Lines changed: 9 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,13 @@
55
* Online html documentation available at
66
* http://www.netlib.org/lapack/explore-html/
77
*
8-
*> \htmlonly
98
*> Download CGEHD2 + dependencies
109
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/cgehd2.f">
1110
*> [TGZ]</a>
1211
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/cgehd2.f">
1312
*> [ZIP]</a>
1413
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/cgehd2.f">
1514
*> [TXT]</a>
16-
*> \endhtmlonly
1715
*
1816
* Definition:
1917
* ===========
@@ -106,7 +104,7 @@
106104
*> \author Univ. of Colorado Denver
107105
*> \author NAG Ltd.
108106
*
109-
*> \ingroup complexGEcomputational
107+
*> \ingroup gehd2
110108
*
111109
*> \par Further Details:
112110
* =====================
@@ -146,6 +144,7 @@
146144
*>
147145
* =====================================================================
148146
SUBROUTINE CGEHD2( N, ILO, IHI, A, LDA, TAU, WORK, INFO )
147+
IMPLICIT NONE
149148
*
150149
* -- LAPACK computational routine --
151150
* -- LAPACK is a software package provided by Univ. of Tennessee, --
@@ -160,16 +159,11 @@ SUBROUTINE CGEHD2( N, ILO, IHI, A, LDA, TAU, WORK, INFO )
160159
*
161160
* =====================================================================
162161
*
163-
* .. Parameters ..
164-
COMPLEX ONE
165-
PARAMETER ( ONE = ( 1.0E+0, 0.0E+0 ) )
166-
* ..
167162
* .. Local Scalars ..
168163
INTEGER I
169-
COMPLEX ALPHA
170164
* ..
171165
* .. External Subroutines ..
172-
EXTERNAL CLARF, CLARFG, XERBLA
166+
EXTERNAL CLARF1F, CLARFG, XERBLA
173167
* ..
174168
* .. Intrinsic Functions ..
175169
INTRINSIC CONJG, MAX, MIN
@@ -197,21 +191,19 @@ SUBROUTINE CGEHD2( N, ILO, IHI, A, LDA, TAU, WORK, INFO )
197191
*
198192
* Compute elementary reflector H(i) to annihilate A(i+2:ihi,i)
199193
*
200-
ALPHA = A( I+1, I )
201-
CALL CLARFG( IHI-I, ALPHA, A( MIN( I+2, N ), I ), 1, TAU( I ) )
202-
A( I+1, I ) = ONE
194+
CALL CLARFG( IHI-I, A( I+1, I ), A( MIN( I+2, N ), I ), 1,
195+
$ TAU( I ) )
203196
*
204197
* Apply H(i) to A(1:ihi,i+1:ihi) from the right
205198
*
206-
CALL CLARF( 'Right', IHI, IHI-I, A( I+1, I ), 1, TAU( I ),
207-
$ A( 1, I+1 ), LDA, WORK )
199+
CALL CLARF1F( 'Right', IHI, IHI-I, A( I+1, I ), 1, TAU( I ),
200+
$ A( 1, I+1 ), LDA, WORK )
208201
*
209202
* Apply H(i)**H to A(i+1:ihi,i+1:n) from the left
210203
*
211-
CALL CLARF( 'Left', IHI-I, N-I, A( I+1, I ), 1,
212-
$ CONJG( TAU( I ) ), A( I+1, I+1 ), LDA, WORK )
204+
CALL CLARF1F( 'Left', IHI-I, N-I, A( I+1, I ), 1,
205+
$ CONJG( TAU( I ) ), A( I+1, I+1 ), LDA, WORK )
213206
*
214-
A( I+1, I ) = ALPHA
215207
10 CONTINUE
216208
*
217209
RETURN

lapack-netlib/SRC/cgelq2.f

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,13 @@
55
* Online html documentation available at
66
* http://www.netlib.org/lapack/explore-html/
77
*
8-
*> \htmlonly
98
*> Download CGELQ2 + dependencies
109
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/cgelq2.f">
1110
*> [TGZ]</a>
1211
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/cgelq2.f">
1312
*> [ZIP]</a>
1413
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/cgelq2.f">
1514
*> [TXT]</a>
16-
*> \endhtmlonly
1715
*
1816
* Definition:
1917
* ===========
@@ -104,7 +102,7 @@
104102
*> \author Univ. of Colorado Denver
105103
*> \author NAG Ltd.
106104
*
107-
*> \ingroup complexGEcomputational
105+
*> \ingroup gelq2
108106
*
109107
*> \par Further Details:
110108
* =====================
@@ -126,6 +124,7 @@
126124
*>
127125
* =====================================================================
128126
SUBROUTINE CGELQ2( M, N, A, LDA, TAU, WORK, INFO )
127+
IMPLICIT NONE
129128
*
130129
* -- LAPACK computational routine --
131130
* -- LAPACK is a software package provided by Univ. of Tennessee, --
@@ -140,16 +139,11 @@ SUBROUTINE CGELQ2( M, N, A, LDA, TAU, WORK, INFO )
140139
*
141140
* =====================================================================
142141
*
143-
* .. Parameters ..
144-
COMPLEX ONE
145-
PARAMETER ( ONE = ( 1.0E+0, 0.0E+0 ) )
146-
* ..
147142
* .. Local Scalars ..
148143
INTEGER I, K
149-
COMPLEX ALPHA
150144
* ..
151145
* .. External Subroutines ..
152-
EXTERNAL CLACGV, CLARF, CLARFG, XERBLA
146+
EXTERNAL CLACGV, CLARF1F, CLARFG, XERBLA
153147
* ..
154148
* .. Intrinsic Functions ..
155149
INTRINSIC MAX, MIN
@@ -178,18 +172,15 @@ SUBROUTINE CGELQ2( M, N, A, LDA, TAU, WORK, INFO )
178172
* Generate elementary reflector H(i) to annihilate A(i,i+1:n)
179173
*
180174
CALL CLACGV( N-I+1, A( I, I ), LDA )
181-
ALPHA = A( I, I )
182-
CALL CLARFG( N-I+1, ALPHA, A( I, MIN( I+1, N ) ), LDA,
175+
CALL CLARFG( N-I+1, A( I, I ), A( I, MIN( I+1, N ) ), LDA,
183176
$ TAU( I ) )
184177
IF( I.LT.M ) THEN
185178
*
186179
* Apply H(i) to A(i+1:m,i:n) from the right
187180
*
188-
A( I, I ) = ONE
189-
CALL CLARF( 'Right', M-I, N-I+1, A( I, I ), LDA, TAU( I ),
190-
$ A( I+1, I ), LDA, WORK )
181+
CALL CLARF1F( 'Right', M-I, N-I+1, A( I, I ), LDA,
182+
$ TAU( I ), A( I+1, I ), LDA, WORK )
191183
END IF
192-
A( I, I ) = ALPHA
193184
CALL CLACGV( N-I+1, A( I, I ), LDA )
194185
10 CONTINUE
195186
RETURN

0 commit comments

Comments
 (0)