⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uart_test.stp

📁 自己实用Verilog编写的UART程序
💻 STP
📖 第 1 页 / 共 4 页
字号:
NOTE "CREATOR" "Designer Version: 7.3.1.9";
NOTE "DEVICE" "A3P250";
NOTE "PACKAGE" "A3P250-PQ208";
NOTE "DATE" "2007/04/16";
NOTE "STAPL_VERSION" "JESD71";
NOTE "IDCODE" "02A141CF";
NOTE "DESIGN" "uart_test";
NOTE "CHECKSUM" "6276";
NOTE "SAVE_DATA" "FRomStream";
NOTE "SECURITY" "Disable";
NOTE "ALG_VERSION" "12";
NOTE "MAP_VERSION" "1";
NOTE "TOOL_VERSION" "1";
NOTE "MAX_FREQ" "10000000";
NOTE "SILSIG" "00000000";
NOTE "DIRECTC_VERSION" "140";
NOTE "TRACKING_SAR" "61590";
NOTE "SPEED_GRAD" "STD";
NOTE "TEMP_GRAD" "COM";
NOTE "PRG_BSR_SET_IO" "Z";


ACTION PROGRAM =
                W_INITIALIZE,
                DO_ERASE,
                DO_PROGRAM,
                DO_VERIFY_BOL,
                DO_PROGRAM_RLOCK,
                DO_EXIT;
ACTION PROGRAM_ARRAY =
                AW_INITIALIZE,
                DO_ERASE_ARRAY,
                DO_PROGRAM,
                DO_VERIFY_BOL,
                DO_PROGRAM_RLOCK,
                DO_EXIT;
ACTION ERASE_ARRAY = 
                AW_INITIALIZE,
                DO_ERASE_ARRAY_ONLY,
                DO_EXIT;
ACTION ERASE = 
                W_INITIALIZE,
                DO_ERASE_ONLY,
                DO_EXIT;
ACTION ERASE_ALL = 
                INITIALIZE,
                DO_ERASE_ALL,
                DO_EXIT;
ACTION VERIFY = 
                R_INITIALIZE,
                DO_VERIFY_EOL,
                DO_EXIT;
ACTION VERIFY_ARRAY = 
                AR_INITIALIZE,
                DO_VERIFY_EOL,
                DO_EXIT;
ACTION READ_IDCODE = DO_READ_IDCODE;
ACTION VERIFY_DEVICE_INFO = 
                READ_INITIALIZE,
                PROC_READ_IDCODE,
                DO_VERIFY_DEVICE_INFO,
                DO_EXIT;
ACTION DEVICE_INFO = 
                READ_INITIALIZE,
                PROC_READ_IDCODE,
                DO_DEVICE_INFO, 
                DO_QUERY_SECURITY,
                DO_EXIT;

DATA PARAMETERS;
INTEGER freq = 4;
ENDDATA;

DATA GV;
' Generic Buffers.
BOOLEAN Buff128[128];
BOOLEAN Buff32[32];
INTEGER IDRev;
INTEGER IDFab;

INTEGER i;
INTEGER SDNumber;
INTEGER RowNumber;
INTEGER DataIndex=0;
INTEGER FRomRowNumber=1;
INTEGER AESBlock;

BOOLEAN ID[32];
BOOLEAN PASS = 1;
INTEGER STATUS = 0;
BOOLEAN SECURITY_PASS = 0;

BOOLEAN SILSIG[32] = $00000000;
BOOLEAN ISC_Config_Result[18];
BOOLEAN VERIFY_EOL[2];
BOOLEAN CombEraseSelect[23];

' signal to display cycle count in PROC_DISPLAY_UROW;
BOOLEAN FLAG_DISPLAY_CYC = 0;

' Set to 1 of need to check for security key
BOOLEAN SECKEY_CHK = 0;
BOOLEAN SECKEY_OK =1;
BOOLEAN SecReg[44];
BOOLEAN ULUWE = 0;
BOOLEAN ULARE = 0;
BOOLEAN ULUPC = 0;
BOOLEAN ULUFE = 0;
BOOLEAN ULUFP = 0;
BOOLEAN ULUFJ = 0;
BOOLEAN ULFLR = 0;
BOOLEAN ULULR = 0;
BOOLEAN ULAWE = 0;
BOOLEAN ULARD = 0;
BOOLEAN ULOPT[2];

''''''''''''''''''''''''''''''''''''''''''
' Reserved Variable names for ACTEL STAPL file used by programming 
' tools to modify the UROW fields. This is possible because UROW 
' field is does not have security support.
'
' Design Checksum in UROW
' Displayed by Display Device Info Action
BOOLEAN sUROW_CHECKSUM[16];

' Cycle Counter
' increment by one for every FPGA Array programming
INTEGER ACT_UROW_CYCLE_COUNT = 0;
INTEGER sUROW_CYCLE_COUNT = 0;

' Design Name
' 10 7-bit characters
BOOLEAN ACT_UROW_DESIGN_NAME[70] = $0157869CBFD2F4F397;
BOOLEAN sUROW_DESIGN_NAME[70];

'Programming Method
' 000 ------ IEEE1532
' 001 ------ STAPL
' 010 ------ DirectC
' 111 ------ default
BOOLEAN ACT_UROW_PROG_METHOD[3] = #001;
BOOLEAN sUROW_PROG_METHOD[3];

'Programming Algorithm Version
BOOLEAN ACT_UROW_ALGO_VERSION[4] = #1100;
BOOLEAN sUROW_ALGO_VERSION[4];

'Programming Software Version
BOOLEAN ACT_UROW_SW_VERSION[7];
BOOLEAN sUROW_SW_VERSION[7];

'BP Programming Software Version
INTEGER PLAYER_VERSION_VARIABLE = 0;
INTEGER SCULPTOR_MAJOR_BASE = 4;
INTEGER SCULPTOR_MINOR_BASE = 50;

'Programmer
'0000 ------ FlashPro SW with FlashPro
'0001 ------ FlashPro SW with FlashPro Lite
'0010 ------ FlashPro SW with FlashPro3
'0011 ------ Sculptor WIN  
'0100 ------ BP Win
'0101 ------ DirectC
'0110 ------ Actel JAM player
'1111 ------ default
BOOLEAN ACT_UROW_PROGRAM_SW[4] = #1111;
BOOLEAN sUROW_PROGRAM_SW[4];

BOOLEAN IsEraseOnly = 0;
BOOLEAN IsRestoreDesign = 0;
BOOLEAN BsrPattern[708] =
$92492492492492492492492492492492492492492492492492492492492492492492492492492
4924924924924924924924924924924924924924924924924924924924924924924924924924
924924924924924924924924;
BOOLEAN rlock[832] =
$7FFFFFCFFFFFFBFFFFFEFFFFFFBFFFFFEFFFFFFFFFFFFFFFFFFF3FFFFFCFFFFFF3FFFFFCFFFFFF
3FFFFFCFFFFFF3FFFFFDFFFFFF3FFFFFCFFFFFF3FFFFFCFFFFFF3FFFFFCFFFFFF3FFFFFDFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF;
BOOLEAN ArrayROnly = 1;
BOOLEAN ChkArray = 0;
BOOLEAN FromROnly = 1;
BOOLEAN ChkFrom = 1;
BOOLEAN ChkSec = 1;
BOOLEAN SetEraseSec = 0;
BOOLEAN PERMLOCK = 0;

INTEGER hex[16]= 70,69,68,67,66,65,57,56,55,54,53,52,51,50,49,48;

ENDDATA;

DATA BITSTREAM;
' DataSize = total number of bits
' Data = data from map file.
BOOLEAN datastream[1913600] =
@WPw00000110040W0W000020G000400108002200000Wwcqssso0000p@@lF999IjjjQp0000_@x@
@IYaatcjj50000y_@@7HIIIORRRR36uXaa49jjTDqWD2000y@@EH0vssMj90008@@z@69HIo0000
49IIICIII2Va00008III0HII2i134999H899f67Waaa4aaaKD020Za491aa8900gX7GIIIA00008
00m0G0aaaa9mWauWku00000IIIIg1Vqsssosssc3999A1000jjjQpjjPRMIYay0000tcjjbMjjj8
III20000ORRR3RRRhWaaa3ZWQW3sORRssba897000mskJAGIIIYC000Wbaa8vIIaaJRpsEJYaaD9
IIo4999sijjz8999B999fKHWjjj19999aaaaGIII2QRRpIIIY4IIoQm6caaausssgZaa4PIIIdW0
PRRRsIIIa600So88EH0IIIYxa1r72IF6WaaaySHGDW50IIIr07AK6KV8O0OGDuWIQ1r02AY4K3Qe
TDHDu22000r05w4AessscJIIIUy0ejjj2aaa84000G00e6GGhK1ijjjYaaa2d7K3w0JIIIkyWQW2
qsssWjjjvIIIYO@@l@jjDR7RRssaa89X@x@Vsk6KW99992@@@_nssiDjjT@80n@@VD84LIII4@@@
zjjjPpQRhJW04@@@_GRRrMRRpsijLRxlDRRtMjjTtijjNrss6pssssssscsssMHRRRMQRRrYjjPR
ijLRpsMD01sORRh1ymssscvssMjRRRsCRRrsljL3GWz000040030OK3uK@Z130Br9SX000WQ0D2D
efjmf1WCZJMB22jOho2q_FGp@1Q_FGp@1Q_FGp@1Q_FG3l8999HIII2baa41999oIIIaeaa8989H
IMIYa49f6G10999HGIIc1W089992IIIaaaa81IIg6W7T2ce6W6H3UAGZ@3qu@0D_FG3Nh4q0GIII
a200YKW04000W899BpyWS3LOKH3QFyWQ00fJ0AsHyW10I02000800W10sfJ0AaaaaO0000GIIYS0
000A99I20000ca89H0e6W2400008999N12g1mWqEFe6WEw4OYI6Fmaaa45000WIIIz7GWIIII000
0W899xHWaQ0eeJWB21m0Waaae000g2W020000IIIa100q7m1jIGGY09SOm1r0CId0KaB91f1K0WI
Ioq080HIIID0Gq9G4r0CId0EC0m@30yV0Dr5DmQ1ezVWJ@7uq@12_Vy8a7Qm@1qyVm9@7K7GA999
ZZx2baaazmTHD0T4yew1dyVm9@7yur1DWMmZ@7yu@1F_@00@7Gp@1F_VmZ@7yu@1F_VOO@7Qm@1q
yVmZ@7yu@1F_Vm9@7yu@1F6lijjD3000Wsssi50000QRps6000WiDRR70r0W0WjjDR000r0GmDX4
ejjjf6WHw482ssssGIIIaRRRp899H2jjDRXa49fssijJIaa4sM3G1Yjjjh1G1YjjjQaaag18aE1e
mssscJIIIGRRRs999Hgjjz4m1CJIIaussgjIIg602iGIIY4RRxMW5g1eZE1ce6020000uaaa4200
0GIIIa2009HU0eaa49200@CUmvX70999fFI5g1GZE1iG2@@l@Xa499@@_@JIaa4@x@@DHII2l@@@
79999r0aW799fQ0809999u@@VFaaar0GId0DuZaayZ02KRRR@uW1tFG0sssM5000WQRRrA00K3W2
3FG0sssss28msssID0cq9G3r0Gm00@F0m@1RzVmZ@7yu@1ezVmZ@76s@1ezVmZ@7So@1F_VmZ@7S
o@1F_VmZ@7yu@1F_@00@7yu@1RzVmZ@7yu@1ezVm9@76s@1ezVmZ@7yu@1F_VmZ@7So@1F_VmZ@7
yu@1F_@00@7yu@1RzVmZ@7yu@1F_Vm9@76s@1qyVmZ@7yu@1F_VmZ@7So@1F_VmZ@7yu@1F_@00@
7Ws@1RzVmZ@7yu@1F_Vm9@76s@1qyVmZ@7yu@1F_Vm9@7So@1F_VmZ@7yu@1F_@00@7Ws@1RzVmZ
@7yu@1F_Vm9@7yu@1qyVmZ@7yu@1F_Vm9@7So@1F_VmZ@7yu@1F_@00@7Ws@1F_VmZ@7yu@1F_Vm
9@7Qm@1qyVmZ@7yu@1F_Vm9@7yu@1F_VmZ@7yu@1F_@00@7Ws@1F_VmZ@7yu@1F_Vm9@7Qm@1qyV
mZ@7yu@1F_Vm9@7yu@1F_VmZ@7yu@1F_@00@7Ws@1F_VmZ@7yu@1F_VmZ@7Qm@1qyVmZ@7yu@1F_
Vm9@7yu@1F_VmZ@7yu@1F_@00@7Ws@1F_VmZ@7yu@1F_VOO@7Qm@1qyVmZ@7yu@1F_Vm9@7yu@1F
_VmZ@7yu@1F_@00@7yu@1F_VmZ@7yu@1F_VOO@7Qm@1qyVmZ@7yu@1F_Vm9@7yu@1F_VmZ@7yu@1
FoE100W10_V00P0400C001G0002efie1w9un@3Uy@W7@Fun@3Uy@G3_F0j@3Uy@W7n5aaaLmZ@7y
u@1dyVmZ@7yu@1F_VmZ@F0m@1ezVmM@tGWXbBTGq0J4yuMXYUGmZ@7yu@9r9t91NXW008Ci@3Du@
u40yqQg2EXw62i8uHfWaa4KzM3Waa43Uy@W7z4400Gm9@7yed4aa43UCN02001F_6800WI69G000
PmZHnosskan8ejjT6y8LED99BPy0csssGGIIaBRR7yOLED993UiCGGIIbCUWt@@@W7n2800WQQRx
I6F0400GmZDl67HH3mONt6MIYJH3CKmZkN@0P1EXMaNe5yu@1F_V8Y@7Qm@304HmMe5d0q1dKsiU
64SIQHOsGK094yeKLlPW4aaauuQ8uHiY60YW7@l8YK02004rXOT74Mm9DtF11nBIMq078899e605
099P5e1LL7SGt1D01008ungG00GNo841Fw4RRRxh59GQRR41991jjjjWWaaAPyWW7ToossM9Z4Gs
ssHIIIwga94yOLbCIW0004999f0200APa0200K1F6bV@@@I690@@@9III2@_@@C9991N@@7yeKbC
21stssW7LU0W@70mcbREgaaGY6GfW7@FunVlokdW7@FEXk44004yu@X8_Ve1sTkN31t@V44A2400
8uaokosWW7JBMDB2UKguuQ8uHgk2mW8y4BunhF8O140G0BayJOBg7DWOLKqWiaa4A998LKG0899n
OBSg6W6aXaa4enMn9K6W10WI690300DFRRBW000bCIW100IrjjT1Fw4BQRR8199oDijPaea8XcsE
un2WjjT2baa8uHdibjjvKaa4quscT2IoW7BmaaaBqssC2IIY1Fw4G00WI690200YmaaqI6LWYaaO
mZEvZ@@laH2S@@VYXaamp@@V9Z6udeaCund0200ecssc02000RQxI6BWssM0300ANRRh1FwKRWaD
0mV0400608jLyKAWc@Zdtr10AJW00GmZi5v5P1FIz18AS5G71evpjqGiEW1HU9sr6RTd2PXXHGS2
J46s@1ezVS207SoRe0002EfieRyAUH8eiaa4yOLr0aHmZ_UUnPHTeyIK6KGm1hhTKm9RSTGJ1F6I
i5R5D0QXJW6W00WI6ZG000vBV64yuIx8sWMsssW79Wsss9GIIYW7TgaH2WaaGJsssHIIIA3RRxW7
90RRR6999nW7hgan4ayaaKoe11F_aF@@@I69G@@@9III2l@@@C1993UaW67D9unLAPi1G1001FIG
9Z54yuJtjd_00@7i5z1K1q00F6uqQ1F_V0Qz4SVPHjlsPj@66cXBASL11H4MfOhgqLe1e5yOuBcQ
Gm9IH0008u4n80044SIOnB2HmZO5994r0S0199nWwS2800GCCl5soQzfSKe1XSTJO1RfSmZy1IIo
AunSBPy0400qyjjj0200Ko814008Lsss5yOLIRRZ8899eXjjDuH2ajjTYbaa8uHfaaaG3sssHGII
ABRRxW79GRRRMmZHLoe22III1400Kou1qaa43Uq9@_@@bCU0MII2V_@@bCQWV2IoW7jY000esssE
01001FI0100AJRRh1F_Vgr0D0m@1g@VmZ@7yu@Z00HmZ@7vbY1duys2C4tk1ZWWLaAv58e11qyVm
ZB6lO2XJqGmZt6S2PbCcHmZF55W1G199ZmxB01001FgzbA75Qm9djiLm9fDDGJ1FYIyYK5yurbCE
HmZLfjjDYWaaG9ZD4yOLajjTAPaXW7vIIIIQmZAGIIICuHiGIIIut@@Fun3QSqaW7bfaH92Uy@0g
yB0j@3sw@W7@Funa3GRhW7@Fua@3Du@22OQPDY2enGG000PMZNm9@7yu7LlPHmZIL3012II22Uqh
g3Q0800GCCY5RHOXjyVm9UMH15iaai2Uiie1eAuntO00Gpsss2800GmZV9jjDYWaaWcssMGGII1F
MbDjjjW7FGGIIABRRR8B991FI0D99nW7xL@@@PmZU1800eaHACjjj6yOlz1rn00@7yu@1F2S31XL
kq1H3CHmZ@7y8y20022U4w32ABEXCYzps0q_FWc@70u001001dmNasz4yuVnBI0aaaWW73BIID2U
4hOOI6140Gm9@7yOfIGIIYj0h0DMBunqSRR3W00Wcjjj5m000qoss1FAc6ssMGKII1Fc5aa4Qoss
EIIIIPPRR@4W1CJII2USA8992bCgW9990200K1F6L9Z4eaaaN_@@P9Z6mKaa4yz@VmZV18000RQR
R9Z64yel30O0a00W108W000m00@NaPExXTL99BKnvG1Fw_TsD4VLFbBHIq0D4y8NHGeLj07SPn41
F_V0Q4kQ15pNH6010Wd1_wE5bYJ84W100l9K6W00W0q_FW6_pzG1W0001QqGm9@7yu8LlPW0aaag
t80aaaLmZ@7yOZ04002iz@W7HDsYj2U4Q0100osssCe10Ko810100APKXW7fIEfjDZWaaW79eaH2
ajjT6yuLW2ssiJGI6yO1caaSrsscHJIICuHfAPC18100bCU0D99nW7Toj@@V9Z4e@@@a999XR@@@
I6DmF19PmZMH000CuH5800GPQRRDunX70uWW7@V00Ue0004GJP1TJLmZT7vbN1EXMaNeruui1FgU
hZ7S9xLzHoMy8x5kt1XyAMq035Qm61IaGe174OBL0000G8004yu@nmKpaIO4So@1FsXabaagtW8u
ngaiab898H1IIIGD0DGGIICungkEeXD0I8unPZ6nW22Qu_tW2DuaZXtgW02I0WWZ1CAun1raa44l
eN8D99HGIIM302aW4b2UCiy4KgI0A0900Ko81U00e9PRRLoe2_RRx2Uq9cqssG0IIaBORp8J9faH
42UaABPRRbCIWPRRdW7FOLo2O6Wa4yeL200Gqcaa2800ean3W8996yeJUv@@BPa0y@@d0899yx@@
7yu1cIII2UqfI6F0200easskI6DGX600esssW7lgnhm60OymAHZ000mr0N5uKP01002Uiw6zP80D
gAN2Xe1a8unjstZekkmOnYCAPKg32i80j@ZW8aP0M0880m0040600O0Wo2H4jE1GBi5qY6edG3s8
qnhA88aiJO8uHY3Ded2Fq8CE2EpOYWJgwZLb2UilI6FWW4aKmZULAd12II2aaqa5DW2Waa43Uige
2j8unPBYu06000jTeKW0R4dI3n7eLy8e5yOQLK8Hi5F5D0QL74HvD35yO540WjTxR7g20Wcijj1e
040qoMsKe040uRRtu89r0SX3000GRRRr0S0500WQ08W1jjDKaa4v0soCY02aK9RnM8BnIYfCRRaW
W7pXIIIorY68fssk6W5CWDjfKWW4K3McLIHIaQBRsE1DHIDWPRp0619kTmZsK3W1M9993Ua09999
gjjjh1W0W400E198nG200cda6v0000IQIcq00008eHIo04yOEO0000JIIs9G1aaa6g1e09TC@_No
IiaTYx_F1H2Izc@@l4819@s@_NiWaa5yuDaaaaO@@@xJIIYK@@l@B99Io@@r0G0oG3G0KJRsM0C0
1e9PRRH2W0u6hfDGK00K_qsM3Ui7Wsssi5000WRRN3011FoGWwEN3m19TeGivOT7uS1D4C010WW7
RUZv6wlIf10YGW08GyYN4uqILJOGKXe5yOQRDOHmZPj4G7n9q3800Ww6e8eA3YyofZ9G0800IC48
SRULH3G01000G000G000gEnhWkF86652HygQ0YeBgU2EvlyS8uWW6YCMh0qK_2c9speA00002100
YwGX0R16W00G995CcH1G8002U4BCaaaA899hUx01999LlT0f99nW7T2B9992IIoe1S8Io42UqhuV
n2G00GWJfTD24@AXrDxd5SYoO999H2II25baCUnlY6W0999AMII22U4jk3EumfX2Ui202msizjZa
02GRwssWf120QRBRgX100qdjP7004yODssss2US2sP2xs618HIyaPQZC119a4ji50Wia06ss6KMI
I4yuDGIII2UqWQ0SmIsqcQQ2IOEOPM119HE4iRxWW49L4djD3Gaaus1F_3ojjjW7N0010G9Z4800
WHhIIE040099f9Q1200Kma4yuJUX@@BPa0yV@l0A9fb7V@hqaW4dl@lNqGoW7znlaa4f@@@W7N00
10WIJBR2W1204fjPZX000ts6j1J00WIpW7@f6W32UKYXJCBM9q2wkv2zT8OumY6GXu4k2G40GD0A
08408eXlANSh02eew_jYJWXe1Q8exe2Uqivu8un04cpeXw7hB0jasTqe0dy0400mNSDO00082Ye6
6WWOSRO1f3sHLh5M3hwW3E1HXW7@gt0ZQRJa65wAQW5k0e00A201ezVd0f0GG0O00n2Q0XCBI010
0Oz9NLTG417qJG3RSg34@mOGm9Bj_61IIIK4Ca4Kz61Wa4jYZZXW7Ng6W3aia48989h6W32UShJ5
i8uHYNkrh@p2ha322SYWmZA0110Gm90NHn12II2aWaa5luMf1m0oQIoQ0AmcaaLmZNX1008EXlWW
0aSe114aW00W00G2IGO9c24a00K3G24WW00000K3WGaW400400HW22004009u11006004qW8002K
3024iW00W10K3GGWf00abijPG800qtscj8800G@RsseK00ai5MPEr0O0ejjDR100r0G03000Gsss
ipGqiDYKYaSQns618II8CQRB0899L8ijTAWaa8ioZesssgJIIY439hsE99I21eQR74C9f2WjjH5a
aa3YssCIHIYXLUZJIIIGRRRs999HgjjjEm20000SQJI2XW008O99IH000a0a890100KJZa418ioS
W0000aaa4f00GG044y81aaa4Sx@@32GIYyi_lFB99IC@@_tib89SGx@VGeboFg104VIIIr0G0JII
Im@@@_899H2A10WQIps29500iDQR7c000cjjj5360WAioXcaW0ijjjA0002haX10ME9AoUD0mM4Z
gN032hiW8zxAQ05I_Kfe1q8Jqo0800yKwM30eW010WmnBBioqAcyEW000Xk9riZ64dGP22002VTX
88ww0a5AzoB8000H3emvhQX040O3abYJWYXFR84W92Uqs10GBioqEcW10A00j5KsgeObxn1D6CH8
lI1400eq230A00yRHGn9K11080000XV90Hq064SoI8899Zaa01991rrf0A99B2IIYXL6LHUHmIIo
AQ032hKgWWEB4ay2IzgWJYUp3I2ha88991IIIoacaa4MfNr0W089Hfe1kAe1q0B148lVxpms0KmZ
4mj180rajCt20WW7bY0fzD41a4vbqcC20IWG0OJMGQHM2eSmZJP0OJp10988ai5x0Wa85GsyD0IY
aC0oscfPmZJvIea4291G9Z78bDf9ungy@@@3aMIYS0_R9Z48l@tdH098Om_V@YWa1F_4s400rqto
400W08RRpEl400C9DJBc600bq1FgRrLU5Cy4bav5010aE3I3G40000WapMOgQwCY68130001RTst
Q1roo6G000QzfEG100HUHLc1H4rUKbAemH36qir1varJmZF6W6NnA5sk04G0088EE8e00041XKh1
ymfw64BxK2000xnzi@28W400G4z757N5LYT6A00WtmYwHWB08004qG3ntiL117ybxH1sYIN705D0
5b9mGm04K0CMG0004400SFG4B_OGm9E18100H00GshB5qG580W00004W1W00000mt074L8L8991L
IMI25WaiwD2aWaaG199HG2IISS74y8MIGII2gRhW7DR5W2gIKmW7hL040Ge1W1G048Ib701024Dm
K8B98HGII6y81GIIoKWaaG899HGGIYiWaaOBU2O99PD0DG199H0IIImZN5qW1fOmGmzH1m10G_os
cX918GRVRs2ZG00blPR3wW0GsImZGn2Ms6I6IZS2QJ6189GeCi9B8W89r46jTIKmZGPAORpX1D98
0i5xWYa8L0cyD2OWaS1JscDOmZG1400m1DD94G00WaWa8b81GGQG6yO1aca43Uq9Vs@_W54a8Jz@
wJwIY4hojzDO922Vq_@d62U4AeC40g9Dj9a600mcscTOA20OQQsM0500AD3UKt7LMhSWu2AJieQC
hMW36q@eWjG9Gzp6@4hvIR0800mbNO9200ew05Y6eXO@UAGm7YAChE0ceU23APKiJ2C8QWb08040
G00uL02o0Hfu4qe6W3Ep5Y88S2802mH07SphNX1kGv06yFoHPeEHr180G0WO4aXYJ0Z03GG080Go
mS14408i5601014f2Ob6@540WmuH2xo23Yq@i_7AG000GW6U9G008QY5s8mW8LgA662kCWfWKZ9u
ab0IIIYaaWiwD2Waaa9e99fwj38B996yOKA889XII2M3G1aW4b2UyA80002000G890b@01Z7SmA2
940TKjjFs5C54rnOtTrMm98iT431RLLLBD5rH5LKaWWaaiu5DGGGoIi5IXaaaCII2aas4K3m2u9B
83Uigm9632WQWijzE330IbCI0A0_0qsMpC008APaWW7TYbDsDaaW5vqMaC2IAXGQR8M89bKgiD1x
a458Xj1FsafjQD7a4WWosJi3IIYKHR5te89GojDjRsa1F250020dcqcG4010IIQMoe1i900G2KJY
s418uncS@dz32I0YC@7fFD98Iy_7otaa08y@3vVGY0ayVmZELo812M00W4WjPRxW000maj1j8001
KqstM3Uy@LlaP00mwRoh43ChEog2U4bs2OxeigAWeWkUKW000mHTKLkK4H3aGiVF5qmPDEAMD0iD
BH1n9WMmZAa3I3HUPr6Y5aG2O0200gsgWe1GOG3g0104yrI2H3GG8YK5C2313GmVO84Q0KW100YK
9l0brA_Nq26skFh33400040OWm9Ke_4dgE0XBBIAu4FU6O1G00G1d0L9ZA8899pJIIIrR40IIoAe
E32UqfIvKmIII2Xqaae1K8eEdgSHZOOgwkMkAY8Xb1QAqWDsCWiWjOxRcc2US31991LKOGmZ4GIJ
oAUneg18ZW7@AACY26k202Gskzl1O06GxtMs2T0I0QPBP6FW4Waiz3Uy96sQsGIIGahQ3p809221
i5P1eKVf2s8jpM4W4s6yOJMqErSAI022OBnE499ILiTRZWa89Nt4iPGYW4tEund8mf8PH4700WW4
f95100GIcqc0000GPJ2ICundyB@Ge4ea3_t_fIIG23@b@C1901N@jx7WaDund0604ecsocG1W103
RJs1708WDjHQH001eiczj2GmZ@Nl8Z30SMNBC80908Q0jA9H105W41FASpDDSuJMDJWG5qW92008
m9qYyI1W200HUfLn054pW1x9qG9ZG51128080gVShg3G0W00m9444EXGn9SXG00WQ0AuW89YWufr
0e8wne08004Dm22000w3ChuIR0404Gy8P1880uF32030WiGY20300InKAGG00000428v020G0nKz
J88QSRo3Nga5280WVOMAWc@MJeXTOm2300W000YU1Aex892EfA8060nnnL99C0808Ond62EP9Wa4
abCUWbaaC9818nnrGmZB1aaa4998Oaa5GGoIg605GGYa4yeOt9WGylMj7G3NRPL1174EY2O000wL
Shc73BGTbHIIIYWaaiYY34aaaG1989UngY2mWQ080IIIMmZhzG4Hn9G1i0m0PRxP6s0YAPa0q0S0
ejjkPO0GKo811F_aso69IoIEGRJZ08198fDc5Wai4rmMKTII01F_abjPD7Y4W1FM019LGjeDAc4c
SmMoc9JIICuHe0mf91J4800Wq499b10GGMaqa0800GHIQICuHdSxlv32I6YivFlF199JC_tstaa0
9SzxzVQYYayVmZD1409GDjDDX6000cssi320H0JQ3q2505G9DRR5WW7xzGbm23pX10sgIhAMsoW0
1XQLD3wAiXmeW21000800eO@KOR04Y6Wd0Q6v5eYY68ZDwcOXnjEw7gT1c8GzB2UiAG040H4rb02
0Wm0n8uHeg1mC01008400cjOfWxvORYAYywA30003kaLK2L4pRML7GmW1ASr2Gn9Snf5540EHX60
Ju4QTo03m0002Gxh3TGAOu0lcsCH000XnSHz9H5KdRrM4HmZDHGIIYaea4898fgtK01P9PmZGL30
24aWa2g3ig380180m_U4qz0PW0a0YjOXzZiAiI9YqWd_AIfofiA8uXLG_9un@gemYOBU2D99PD05
GJ2IAuHtYJuAG082osstCG081QPRpNG084ejDPRG00EotijS04yeJQVO4891vYj9DYb4WWssoMGI
o2KJRRm999n2RRBuHd4sf91QejL9wa495rMjlC2aaWSmsMc1IIGCuHd020GKoO104ac89e0002IY
ac40000AGIIZ1Fwad@VzI6BmTV2YaiuT@Dk9I2Iuz@l@O9919und005rejC5G084eqsckI6B0j52
00YQRscA01FAsELcD0Gr0a00600hByQ8Cvj04084DWH1R1uUHK4jrMnkrGaaJLk42H38HWJG1120
OB140202CsGGnnnH70LKo8LTIIHmzLL4bI1FoH417KU52noQGaNK5DG230OL87L4GJML7y0G0G08
400TiNsf1MLGW4H3mpTDQ511A54KmTA95Gp7H3Cs00bLOH5HGKGm9QLfJH1dmHl0L4SoInBY0n98
9IGMGLlT00oIoW7dgKk28B19H2pIAII5GGYa4y8LRWOHGGHTR1Q800GksOfz0u8aNr2ILjW79k6W
B09996eHK04002QWCSajjwP000yqsgjiW00KGhsMt0104aQRxx2Uq9sssnGIIYaRRRW899X0jjDH
Xa4PfcsidJGa44s6yOJsssmSQI22QRR1E999KDjjL9Dm6cP9IOSxW7Rgan28D20Ko81C5000IIIY
Y0200H99II4WW7Ro@@VD8991o@@Fyaaa0nx@RRJIYemxl@y9f67B9unL000OecsMa000i0RRRq11
0OWjjPQ104y81G5002UCi10GRLbh207f108C9a4MDei0QABIb6EWWes2ousUb60W3G200dM8HmZH
1G0YCE1A2Uig88CBdW7sQOXW7dgsn72U4io1m8uHbQvFp10WPBC5EEnhe188OBqE33jG3QBWcZVP
WWe18R1lqUpWXr1S8u4d0400433Q1dCM9ZC4y8288B93U4h8y0B66ws3m00100RMFLOBp5yu@1F2
3199fW7rBG3g2QuC8djjQF000Kqsgjl000wGhssw000OaQRRv2U4AJWaa8GtsivHIY40Qps429I2
KDRR3d89922U4A5SIIa2QRr0E9HoGjLR9Y49P2Njj1Oaaa43USAIe0004aaAPyW6080KIIY610WW
7To_GIYaX@VVr99bCIWpD99I4@@_5da8f8@7yuJ0jssiP00040Rx_1207RRpc200GJjDRJ5WW71k
3cg_zJl9lGurWlguv1WG001qCs_R_40j6HWNMp4grgL29GGGe17iIGK4800YJ8Xe1GW000m9044y
uL1QWKq0MGW00u3FAUDWWW7dwUaA2Uih0qMxII4YW8A30007JSm0050O00OR3kG000i1YG1RHuS6
7y2Y1nmi5180WA1Pg7XEs0fX58mA0DbRPe00100DlAKDGgid13n@oJ5ie5eX6r0mGW6BqMmI8998
LIIGMzM20H991IGIY4ia49BIImZI5DW21rj542000G00H6pKt3jijLL1FcTqD55SY91RPL555G2K
IgYY50aaa4y8Lcaaag1G1qeaar0GWkaaaW7pLhPRhs200mjjjQvB00WqqgjjF008NfssNkW7XYK8
99GqjDBKaa8BXsiDGGYa4KpsU09IIWWW7X21da41WsMj0JIaGGRr628HIQnLR386994rW7dYaA00
0899IVA0nCI0U2000Wba8jH02Uy9Q199I2_@zyaa818_t@6RYa44U@@BCII2G2U4AXMRRs70009Y
jPJu000rmcjTX000MNssY43UCu10G3G20m00lrb31BoGrHB6CTq1Drm5200WV1MAW6EQdHXH@y8k
7Wwjn11000lglLs06SK7NL7O0A00We1S8unhYAKiOeCeo05g2uWW7pgXA3A3BXW7X2140GuUEiDX
F1FQ201008100r6KG44DL5615gOGG094D013vU5W2000H00lKrKOOwTLw1F0OG30C4QWLH3WKu4P
iAW2ZGOmc1MLG03tzKKm9c4mfGH3anC0Ai23N2000_zmWb1I0Y00GWjfLRmE1dOIqDMLou1IMI0g
Uh0YeaanBkGmZG5D018898HKIIY4ba411992oII4q891r1Lr1CCFZ1@pWGmZNTfqM5Hamr8C5Q07
dcaLWj_jRY17dyJmZPGIKIYW4a498BfuIrg6W5Y6ehm9K3IORhs600WDjlQxBG0a4qgjjDW00Vfo
sMkW7Xoa899GojDR4aae1Wci9fGW44KJsIW9MIYWW7dYaGJhMm98I8hbQ9OaU2W0R1ca81mj3Uy9
0UIIa4100181HIV18cH2KI0000eq4jD2GmZFPB89HQo@lb@a591mt_zGJAPa0toJG40a@3Uy9WKR
RsM0108XjPRm000Omcjjj02GoKcssK3USgaUUeSyjkpTmMU1DWcC8W00aa0OnBQ0300WO@_AQW2_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -