[
Logbook Home
] [
Log
] [
RRDXA60
] [
Most Active Operator
] [
Challenge
] [
Events
] [
Cabrillo Upload
] [
Adif Upload
] [
Member Area
]
Logbook
call: DK3DM
country: BRAZIL
click to remove filter
return to main page
Date
station
op
DX call
DXCC
band
freq
mode
sent
recv
grid
contest
19.04.2015
DR50RRDXA
DK3DM
PY3AU
Brazil
15m
21.000
CW
599
599
09.04.2015
DR50RRDXA
DK3DM
PU1ALM
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PY4BC
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PY2TTE
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PY2TT
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PU1RSN
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PY2RBN
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PU2RTO
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PY2CUF
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PU2OKE
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PY1PDF
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PU5GYT
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PY5VC
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PU2PHI
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PP5NS
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PY5EG
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PY5VC
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PU7DEF
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PY2DEN
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PY3VB
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
05.04.2015
DR50RRDXA
DK3DM
PU2XBT
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PY2ASA
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PU2YZP
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PY2OZ
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PY5ZW
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PU2MRK
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PP2BU
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PY1MX
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PU5SDM
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PY2YP
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PP5NY
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PT7CLZ
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PY2PT/M
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PU8MRS
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PY5ACC
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PY2ETA
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PU3YAK
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PY2DU
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PU1SSH
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PY5ZHP
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PY2VOA
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PY2JEA
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PQ8SL
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PY3ETS
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PY2LW
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PY6DM
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
04.04.2015
DR50RRDXA
DK3DM
PT7MD
Brazil
10m
28.483
PHONE
(
SSB
)
59
59
06.03.2015
DR50RRDXA
DK3DM
PY5QW
Brazil
40m
7.184
PHONE
(
SSB
)
59
59
08.02.2015
DR50RRDXA
DK3DM
PY2ZEA
Brazil
15m
21.000
CW
599
599
07.02.2015
DR50RRDXA
DK3DM
PU2YZP
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
07.02.2015
DR50RRDXA
DK3DM
PU1VGD
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
07.02.2015
DR50RRDXA
DK3DM
PU3POA
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
07.02.2015
DR50RRDXA
DK3DM
PY3XX
Brazil
10m
28.026
PHONE
(
SSB
)
59
59
07.02.2015
DR50RRDXA
DK3DM
PY4ARS
Brazil
10m
28.026
CW
599
599
07.02.2015
DR50RRDXA
DK3DM
PY1NP
Brazil
10m
28.026
CW
599
599
07.02.2015
DR50RRDXA
DK3DM
PP5NY
Brazil
10m
28.026
PHONE
(
SSB
)
59
59
07.02.2015
DR50RRDXA
DK3DM
PU3YPL
Brazil
10m
28.026
PHONE
(
SSB
)
59
59
07.02.2015
DR50RRDXA
DK3DM
PP5AMP
Brazil
10m
28.026
PHONE
(
SSB
)
59
59
07.02.2015
DR50RRDXA
DK3DM
PY2LOB
Brazil
10m
28.026
PHONE
(
SSB
)
59
59
07.02.2015
DR50RRDXA
DK3DM
PY2ETA
Brazil
10m
28.026
PHONE
(
SSB
)
59
59
07.02.2015
DR50RRDXA
DK3DM
PU5DTH
Brazil
10m
28.026
PHONE
(
SSB
)
59
59
07.02.2015
DR50RRDXA
DK3DM
PY8FML
Brazil
10m
28.026
PHONE
(
SSB
)
59
59
07.02.2015
DR50RRDXA
DK3DM
PP2BO
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
07.02.2015
DR50RRDXA
DK3DM
PY2HT
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
07.02.2015
DR50RRDXA
DK3DM
PY2PTU
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
07.02.2015
DR50RRDXA
DK3DM
PU2XMR
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
07.02.2015
DR50RRDXA
DK3DM
PY2DJ
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
06.02.2015
DR50RRDXA
DK3DM
PU2RDB
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
06.02.2015
DR50RRDXA
DK3DM
PP5GT
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
05.02.2015
DR50RRDXA
DK3DM
PY7DEF
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
04.02.2015
DR50RRDXA
DK3DM
PY3KN
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
04.02.2015
DR50RRDXA
DK3DM
PU1VFC
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
04.02.2015
DR50RRDXA
DK3DM
PU5SKW
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
04.02.2015
DR50RRDXA
DK3DM
PU4CQQ
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
04.02.2015
DR50RRDXA
DK3DM
PP5ZB
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
04.02.2015
DR50RRDXA
DK3DM
PQ2SI
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
03.02.2015
DR50RRDXA
DK3DM
PY1NDX
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
03.02.2015
DR50RRDXA
DK3DM
PU3NAT
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
03.02.2015
DR50RRDXA
DK3DM
PP5ROD
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
03.02.2015
DR50RRDXA
DK3DM
PY2CN
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
03.02.2015
DR50RRDXA
DK3DM
PU2RTO
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
03.02.2015
DR50RRDXA
DK3DM
PU2XRD
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
03.02.2015
DR50RRDXA
DK3DM
PY2KAT
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
03.02.2015
DR50RRDXA
DK3DM
PY6ZK
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
02.02.2015
DR50RRDXA
DK3DM
PU2SUB
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
02.02.2015
DR50RRDXA
DK3DM
PY9MM
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PU2NCC
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PU9ATH
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PY5DD
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PU1MHZ
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PU2MNL
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PY2ND
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PY2DPG
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PY1UC
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PY2AJA
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PU5DTH
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PY2VYB
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PY2APW
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PU2PHI
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PY2RSS
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PY3PT
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PY1RBM
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PU3KTM
Brazil
10m
28.003
PHONE
(
SSB
)
59
59
01.02.2015
DR50RRDXA
DK3DM
PY7AHA
Brazil
15m
21.000
CW
599
599
31.01.2015
DR50RRDXA
DK3DM
PR7FB
Brazil
15m
21.000
CW
599
599
30.01.2015
DR50RRDXA
DK3DM
PP5VB
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PY2RF
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PU8PSF
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PP5JP
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PP5FE
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PU2OAG
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PU2TPQ
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PR7MB
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PU2NGW
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PU5OSB
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PU2RAY
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PY2CTA
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PP5EI
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PY2JM
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PY2ALC
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PU2NFJ
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PY2ALC
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PY2CTA
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PP5BT
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PT9KK
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PY2WG
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PU4CQQ
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PU2NZZ
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PU9AJO
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PY2EW
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PU2NCV
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PU2WSQ
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PU2OKE
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PY5IP
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PY2SAA
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PY3BSG
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PU2RTO
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PY2/VA7UR
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PY2DXX
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PY2LPM
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
30.01.2015
DR50RRDXA
DK3DM
PY1AX
Brazil
10m
28.000
CW
599
599
24.01.2015
DR50RRDXA
DK3DM
PY2SHF
Brazil
10m
28.100
DIGI
(
DIG
)
599
599
24.01.2015
DR50RRDXA
DK3DM
PT7ZT
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
24.01.2015
DR50RRDXA
DK3DM
PW8PM
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
23.01.2015
DR50RRDXA
DK3DM
PU3SSC
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
23.01.2015
DR50RRDXA
DK3DM
PY2POL
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
23.01.2015
DR50RRDXA
DK3DM
PY2WK
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
23.01.2015
DR50RRDXA
DK3DM
PY3SB
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
23.01.2015
DR50RRDXA
DK3DM
PY3JD
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
23.01.2015
DR50RRDXA
DK3DM
PU4HUD
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
23.01.2015
DR50RRDXA
DK3DM
PU4HLX
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
23.01.2015
DR50RRDXA
DK3DM
PU2KGT
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
23.01.2015
DR50RRDXA
DK3DM
PY3DJB
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
23.01.2015
DR50RRDXA
DK3DM
PU2NZZ
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
23.01.2015
DR50RRDXA
DK3DM
PY1NS
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
23.01.2015
DR50RRDXA
DK3DM
PU3AMB
Brazil
10m
28.100
PHONE
(
SSB
)
59
59
21.10.2007
DP4K
DK3DM
PS8ET
Brazil
15m
21.251
PHONE
(
SSB
)
59
59
21.10.2007
DP4K
DK3DM
PY2ZK
Brazil
40m
7.054
PHONE
(
SSB
)
59
59
20.10.2007
DP4K
DK3DM
PY8MGB
Brazil
20m
14.040
CW
599
599
20.10.2007
DP4K
DK3DM
PY2NY
Brazil
20m
14.039
CW
599
599
20.10.2007
DP4K
DK3DM
PS8RW
Brazil
15m
21.020
CW
599
599
20.10.2007
DP4K
DK3DM
PY8MGB
Brazil
15m
21.020
CW
599
599
20.10.2007
DP4K
DK3DM
PY4FQ
Brazil
15m
21.030
CW
599
599
20.10.2007
DP4K
DK3DM
PY2VA
Brazil
15m
21.257
PHONE
(
SSB
)
59
59
08.06.2007
DR80AMA
DK3DM
PR7FRO
Brazil
20m
14.029
PHONE
(
SSB
)
59
59
08.06.2007
DR80AMA
DK3DM
PR7CPK
Brazil
20m
14.029
PHONE
(
SSB
)
59
59
08.06.2007
DR80AMA
DK3DM
PY1SX
Brazil
20m
14.029
PHONE
(
SSB
)
59
59
07.06.2007
DR80AMA
DK3DM
PR7CM
Brazil
20m
14.029
CW
599
599
01.06.2007
DR80AMA
DK3DM
PT7VB
Brazil
20m
14.029
CW
599
599
01.06.2007
DR80AMA
DK3DM
PS7JS
Brazil
20m
14.029
PHONE
(
SSB
)
59
59
30.05.2007
DR80AMA
DK3DM
PY5EW
Brazil
20m
14.029
PHONE
(
SSB
)
59
59
30.05.2007
DR80AMA
DK3DM
PP5OW
Brazil
20m
14.029
PHONE
(
SSB
)
59
59
30.05.2007
DR80AMA
DK3DM
PP5IZ
Brazil
20m
14.029
PHONE
(
SSB
)
59
59
30.05.2007
DR80AMA
DK3DM
PY7VI
Brazil
20m
14.029
PHONE
(
SSB
)
59
59
17.03.2007
DP4K
DK3DM
PY2NDX
Brazil
15m
21
CW
599
599
24.02.2007
DL40RRDXA
DK3DM
PY1BOA
Brazil
20m
14.000
CW
599
599
24.02.2007
DL40RRDXA
DK3DM
PP5VB
Brazil
20m
14.000
PHONE
(
SSB
)
59
59
24.02.2007
DL40RRDXA
DK3DM
PY1SX
Brazil
20m
14.000
PHONE
(
SSB
)
59
59
178 QSOs shown
RRDXA Logbook Django app
by
DF7CB
. Copyright (C) 2022-2024 RRDXA.