http://neil.franklin.ch/Projects/PDP-10/Virtex-CLB-PIPs author Neil Franklin, last modification 2001.02.21 Xilinx Virtex CLB routing PIPs, for usage with JBits Diagram derived from data in JavaDocs ../JBits/Javadocs/com/xilinx/JBits/Virtex/Bits/package-summary.html still missing: SxCLK/CE/SR/TS Hexlines, BiHexToSingle, UniHexToSingle input MUX PIPs (left of CLB): jbits.set(row, col, S0F1.S0F1, S0F1.OUT_WEST1); for vertical space saving: OUT_WEST1 -> OUT_W1, SINGLE_NORTH1 -> SI_N01, etc output MUX PIPs (right of CLB): jbits.set(row, col, OUT0.OUT0, OUT0.S0_X); output MUX to single PIPs (below left): jbits.set(row, col, OutMuxToSingle.OUT0_TO_SINGLE_EAST2, OutMuxToSingle.ON); for vertical space saving: OUT0_TO_SINGLE_EAST2 -> OUT_E02, etc single to single PIPs (below below left): jbits.set(row, col, SingleToSingle.SINGLE_EAST0_TO_SINGLE_NORTH4, SingleToSingle.ON); Tristate (top lines): jbits.set(row, col, TristateIn0.TristateIn0, TristateIn0.OUT1); Tristate In/Ctrl inverters: jbits.set(row, col, Tristate.[In|Control].[TIN0_INVERT|CONTROL0_INVERT], Tristate.[In|Control].OFF); ||||||||N||||||||N|||||||| -- -------- -------- -------. |||||||| |||||||| |||||||| -- -------- -------- ------.| |||||||| |||||||| |||||||| -- -------- -------- -----.|| |||||||| |||||||| |||||||| -- -------- -------- ----.||| |||||||| |||||||| |||||||| -- -------- -------- ---.|||| |||||||| |||||||| |||||||| -- -------- -------- --.||||| |||||||| |||||||| |||||||| -- -------- -------- -.|||||| |||||||| |||||||| |||||||| -- -------- -------- .||||||| |||||||| |||||||| |||||||| W |||||||| |||||||| |||||||| |||||||| -- -------- -------. |||||||| |||||||| |||||||| |||||||| | | ,-x-. -- -------- ------.| |||||||| |||||||| |||||||| |||||||| ------------x-------------------------',---|-- -- -------- -----.|| |||||||| |||||||| |||||||| |||||||| --------x-------------------------,---',---|-- -- -------- ----.||| |||||||| |||||||| |||||||| |||||||| ------------x---------------------|---',---|-- -- -------- ---.|||| |||||||| |||||||| |||||||| |||||||| --------x-------------------------|---' `-- -- -------- --.||||| |||||||| |||||||| |||||||| |||||||| | | | -- -------- -.|||||| |||||||| |||||||| |||||||| |||||||| | | | -- -------- .||||||| |||||||| |||||||| |||||||| |||||||| | | | W |||||||| |||||||| |||||||| |||||||| |||||||| /\. /\. | -- -------. |||||||| |||||||| |||||||| |||||||| |||||||| --| --| | -- ------.| |||||||| |||||||| |||||||| |||||||| |||||||| | | | | | -- -----.|| |||||||| |||||||| |||||||| |||||||| |||||||| x x x x inv | -- ----.||| |||||||| |||||||| |||||||| |||||||| |||||||| | | | | | -- ---.|||| |||||||| |||||||| |||||||| |||||||| |||||||| ,-------------------------------------------. -- --.||||| |||||||| |||||||| |||||||| |||||||| |||||||| |,-----------------------------------------.| -- -.|||||| |||||||| |||||||| |||||||| |||||||| |||||||| ||,-------------------------------------. || -- .||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||,-----------------------------------.| || | |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| | | | | | || || - -------- --x----- -x------ -------- ------x- -------- -------- -----x-- -------- -------- -------- --x----x ---- --xx-' | | | TI1 | || || x -x-x---- -------- -------- x--x---- --x----- -------- -------- ---x---- x-x----- x------- x------- -------- ---- -------' | | TS1 | || || - ------x- ---x---- -------- ----x--- -------- -------- --x----- -------- -------- -----x-- -------- ------x- ---- xx-------' | TI0 TBUF_OUT `--->--xxxxxxxx x -x-x---- -------- -------- x--x---- --x----- -------- -------- ---x---- x-x----- x------- x------- -------- ---- -----------' TS0 |||||||| | ||||||||W||||||||W|||||||| ||||||||N||||||||N|||||||| ||||||||S||||||||S|||||||| ||||||||E||||||||E|||||||| |||| ,-------------------. |||||||| - -----x-x -----x-- -xx--xx- -------- -x----xx ---xx-xx -----xx- ----xx-- -x---x-- --x----- ----x-x- ----x--- ---- -x-- --x- -| S1G4 S1_YB |------xxxx--xx - --x----- --x-x--- x--xx--- -------- ----x--- xxx--x-- -x-xx--x --x----- ---x---x ------x- ---x-x-x --x----x ---- x--- ---- -| S1G3 | |||||||| - x---x-x- x------x -------x --x-x-x- x--x-x-- -------- x------- ------xx ----x-x- -x-x-x-x -xx----- -----x-- ---- ---x -x-- -| S1G2(AC) S1_Y |-,----xxxxxxxx - -x-x---- -x-x--x- -------- xx-x-x-x --x----- -------- --x----- xx-x---- x-x----- x---x--- x------- xx-x--x- ---- --x- x--- -| S1G1(C) S1_YQ |------xxxxxxxx | |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| |||| |||| | | | |||||||| - --x----- ----x--- --xx-x-- -------- -x-----x ----xx-- -------- ----x--- -x-x---x ------x- -----x-- ----x--- ---- ---- ---- -| S1BY | | |||||||| | |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| |||| |||| | | | |||||||| x -------- -------- x------- -------- -----x-- --x----- -------- --x----x -------- -------- -------x -------- xxxx ---- ---- -| S1CLK | | |||||||| x -------x -------- ------x- -------- -------- ---x--xx -----xx- -------- -----x-- --x----- ----x--- -------- ---- ---- ---- -| S1CE S1 | | |||||||| x -------- -------x -------x -------- x---x--- -x------ -x-----x -------- ------x- -------- --x----- -----x-- ---- ---- ---- -| S1SR | | |||||||| | |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| |||| |||| | | | |||||||| - -----x-x -----x-- -xx--xx- -------- -x----xx ---xx-xx -----xx- ----xx-- -x---x-- --x----- ----x-x- ----x--- ---- -x-- ---- -| S1F4 S1_XB |------xxxxxx-- - --x----- --x-x--- x--xx--- -------- ----x--- xxx--x-- -x-xx--x --x----- ---x---x ------x- ---x-x-x --x----x ---- x--- ---x -| S1F3 | | |||||||| - x---x-x- x------x -------x --x-x-x- x--x-x-- -------- x------- ------xx ----x-x- -x-x-x-x -xx----- -----x-- ---- ---x -x-- -| S1F2(AC) S1_X |--,---xxxxxxxx - -x-x---- -x-x--x- -------- xx-x-x-x --x----- -------- --x----- xx-x---- x-x----- x---x--- x------- xx-x--x- ---- --x- x--- -| S1F1(C) S1_XQ |------xxxxxxxx | |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| |||| |||| | | || |||||||| - --x----- ----x--- --xx-x-- -------- -x-----x ----xx-- -------- ----x--- -x-x---x ------x- -----x-- ----x--- ---- ---- ---- -| S1BX | || |||||||| | |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| |||| |||| |------- CLB -------| || |||||||| - -x-x---- -x--x-x- -------- xx-x-x-x --x----- -------- --x----- xx-x---- x-x----- x---x--- x------- xx-x--x- ---- --x- x--- -| SOG4 S0_YB |------xx--xxxx - x---x-x- x------x -------x --x-x-x- x--x-x-- -------- x------- ------xx ----x-x- -x-x-x-x -xx----- -----x-- ---- ---x ---- -| SOG3 | || |||||||| - --x----- --x-x--x ---xx--- -------- ----x--- xxx--x-- -x-xx--x --x----- ---x---x ------x- ---x-x-x --x----x ---- x--- ---x -| SOG2(AC) S0_Y |---,--xxxxxxxx - -----x-x -----x-- -xx--xx- -------- -x----xx ---xx-xx -----xx- ----xx-- -x---x-- --x----- ----x-x- ----x--- ---- -x-- --x- -| SOG1(C) S0_YQ |------xxxxxxxx | |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| |||| |||| | | ||| |||||||| - x---x--- x-----x- -------- --x--xx- ---x---- -------- x------- xx----x- -------- -x-x---x -------- ---x---- ---- ---- ---- -| SOBY | ||| |||||||| | |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| |||| |||| | | ||| |||||||| x -------- -------- x------- -------- -----x-- --x----- -------- --x----x -------- -------- -------x -------- xxxx ---- ---- -| SOCLK | ||| |||||||| x -------x -------- ------x- -------- -------- ---x--xx -----xx- -------- -----x-- --x----- ----x--- -------- ---- ---- ---- -| SOCE S0 | ||| |||||||| x -------- -------x -------x -------- x---x--- -x------ -x-----x -------- ------x- -------- --x----- -----x-- ---- ---- ---- -| SOSR | ||| |||||||| | |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| |||| |||| | | ||| |||||||| - -x-x---- -x-x--x- -------- xx-x-x-x --x----- -------- --x----- xx-x---- x-x----- x---x--- x------- xx-x--x- ---- --x- ---- -| SOF4 S0_XB |--------xxxxxx - x---x-x- x------x -------x --x-x-x- x--x-x-- -------- x------- ------xx ----x-x- -x-x-x-x -xx----- -----x-- ---- ---x -x-- -| SOF3 | ||| |||||||| - --x----- --x-x--- x--xx--- -------- ----x--- xxx--x-- -x-xx--x --x----- ---x---x ------x- ---x-x-x --x----x ---- x--- ---x -| SOF2(AC) S0_X |----,-xxxxxxxx - -----x-x -----x-- -xx--xx- -------- -x----xx ---xx-xx -----xx- ----xx-- -x---x-- --x----- ----x-x- ----x--- ---- -x-- --x- -| SOF1(C) S0_XQ |------xxxxxxxx | |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| |||| |||| | | |||| |||||||| - x---x--- x-----x- -------- --x--xx- ---x---- -------- x------- xx----x- -------- -x-x---x -------- ---x---- ---- ---- ---- -| SOBX | |||| |||||||| | |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| |||| |||| `-------------------' |||| |||||||| H SSSSSSSS SSSSSSSS SSSSSSSS SSSSSSSS SSSSSSSS SSSSSSSS SSSSSSSS SSSSSSSS SSSSSSSS SSSSSSSS SSSSSSSS SSSSSSSS GGGG OOOO SSSS SSSS OOOOOOOO _ IIIIIIII IIIIIIII IIIIIIII IIIIIIII IIIIIIII IIIIIIII IIIIIIII IIIIIIII IIIIIIII IIIIIIII IIIIIIII IIIIIIII CCCC UUUU 0011 1100 UUUUUUUU V ________ ________ ________ ________ ________ ________ ________ ________ ________ ________ ________ ________ LLLL TTTT ____ ____ TTTTTTTT _ WWWWWWWW WWWWWWWW WWWWWWWW NNNNNNNN NNNNNNNN NNNNNNNN SSSSSSSS SSSSSSSS SSSSSSSS EEEEEEEE EEEEEEEE EEEEEEEE KKKK ____ XYXY YXYX 76543210 | 00000000 00111111 11112222 00000000 00111111 11112222 00000000 00111111 11112222 00000000 00111111 11112222 0123 WWEE |||`------------<-----------'||| |||||||| | 01234567 89012345 67890123 01234567 89012345 67890123 01234567 89012345 67890123 01234567 89012345 67890123 |||| 0167 ||`-------------<------------'|| |||||||| | |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| |||| |`--------------<-------------'| ||||||||---. | |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| |||| `---------------<--------------' |||||||---.| -------------------------------------------------------- -------------------------------------------------------->--'||`-----------------<-------------------------.|`--- -------------------------------------------------------- -------------------------------------------------------->---'`------------------<------------------------.|`---- -- -------- -------- ------xx -------- -------- -----x-- -------- -------- ------x- -------- -------- ----x--x --------------------------<----------------'||||||||`----- -- -------- -------- -----x-- -------- -------- --x-x--- -------- -------- -x-x---- -------- -------- --x----- --------------------------<-----------------'||||||`------ | -------- -------- xx------ -------- ------x- -------- -------- ----x--- -------- -------- -------x -x------ --------------------------<------------------'||||| | -------- -------- ---x---- -------- ----xx-- -------- -------- -----x-x -------- -------- ------x- -------- --------------------------<-------------------'|||| | -------- --xx---- -------- -------- -x------ -------- -------- --x----- -------- -------- x--x---- -------- --------------------------<--------------------'||| | -------- -x------ -------- ------x- x------- -------- -----x-x -------- -------- ------x- -------- -------- --------------------------<---------------------'|| | ----xx-- -------- -------- --x----- -------- -------- x------- -------- -------- ---x-x-- -------- -------- --------------------------<----------------------'| | -------x -------- -------- xx------ -------- -------- -x-x---- -------- -------- --x----- -------- -------- --------------------------<-----------------------' | ||||||||W||||||||W|||||||| ||||||||N||||||||N|||||||| ||||||||S||||||||S|||||||| ||||||||E||||||||E|||||||| |||| | |||||||| |||||||| |||||||` -------- -------- --x----- -------- -------- -x------ -------- -------- -------x |||| | |||||||| |||||||| ||||||`- -------- -------- -----x-- -------- -------- ----x--- -------- -------- ------x- |||| | |||||||| |||||||| |||||`-- -------- -------- x------- -------- -------- ---x---- -------- -------- -----x-- |||| | |||||||| |||||||| ||||`--- -------- -------- ---x---- -------- -------- ------x- -------- -------- ----x--- |||| | |||||||| |||||||| |||`---- -------- ------x- -------- -------- -----x-- -------- -------- -------- ---x---- |||| | |||||||| |||||||| ||`----- -------- -------- -x------ -------- -------- x------- -------- -------- --x----- |||| | |||||||| |||||||| |`------ -------- ----x--- -------- -------- -------x -------- -------- -------- -x------ |||| | |||||||| |||||||| `------- -------- -------x -------- -------- -------- --x----- -------- -------- x------- |||| | |||||||| |||||||| W|||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| | |||||||| |||||||`--------- -------- --x----- -------- -------- -x------ -------- -------- -------x -------- |||| | |||||||| ||||||`---------- -------- -----x-- -------- -------- ----x--- -------- -------- ------x- -------- |||| | |||||||| |||||`----------- -------- x------- -------- -------- ---x---- -------- -------- -----x-- -------- |||| | |||||||| ||||`------------ -------- ---x---- -------- -------- ------x- -------- -------- ----x--- -------- |||| | |||||||| |||`------------- ------x- -------- -------- -----x-- -------- -------- -------- ---x---- -------- |||| | |||||||| ||`-------------- -------- -x------ -------- -------- x------- -------- -------- --x----- -------- |||| | |||||||| |`--------------- ----x--- -------- -------- -------x -------- -------- -------- -x------ -------- |||| | |||||||| `---------------- -------x -------- -------- -------- --x----- -------- -------- x------- -------- |||| | |||||||| W|||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| | |||||||`------------------ --x----- -------- -------- -x------ -------- -------- -------x -------- -------- |||| | ||||||`------------------- -----x-- -------- -------- ----x--- -------- -------- ------x- -------- -------- |||| | |||||`-------------------- x------- -------- -------- ---x---- -------- -------- -----x-- -------- -------- |||| | ||||`--------------------- ---x---- -------- -------- ------x- -------- -------- ----x--- -------- -------- |||| | |||`---------------------- -------- -------- ------x- -------- -------- -----x-- ---x---- -------- -------- |||| | ||`----------------------- -x------ -------- -------- x------- -------- -------- --x----- -------- -------- |||| | |`------------------------ -------- -------- ----x--- -------- -------- -------x -x------ -------- -------- |||| | `------------------------- -------- -------- -------x --x----- -------- -------- x------- -------- -------- |||| | ||||||||N||||||||N|||||||| ||||||||S||||||||S|||||||| ||||||||E||||||||E|||||||| |||| | |||||||| |||||||| |||||||` -------- -------- -------x -------- -------- -------x |||| | |||||||| |||||||| ||||||`- -------- -------- ------x- -------- -------- --x----- |||| | |||||||| |||||||| |||||`-- -------- -------- -----x-- -------- -------- -----x-- |||| | |||||||| |||||||| ||||`--- -------- -------- ----x--- -------- -------- x------- |||| | |||||||| |||||||| |||`---- -------- -------- ---x---- -------- -------- ---x---- |||| | |||||||| |||||||| ||`----- -------- -------- --x----- -------- ------x- -------- |||| | |||||||| |||||||| |`------ -------- -------- -x------ -------- -------- -x------ |||| | |||||||| |||||||| `------- -------- -------- x------- -------- ----x--- -------- |||| | |||||||| |||||||| N|||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| | |||||||| |||||||` -------- -------- -------x -------- -------- -------x -------- |||| | |||||||| ||||||`- -------- -------- ------x- -------- -------- --x----- -------- |||| | |||||||| |||||`-- -------- -------- -----x-- -------- -------- -----x-- -------- |||| | |||||||| ||||`--- -------- -------- ----x--- -------- -------- x------- -------- |||| | |||||||| |||`---- -------- -------- ---x---- -------- -------- ---x---- -------- |||| | |||||||| ||`----- -------- -------- --x----- -------- ------x- -------- -------- |||| | |||||||| |`------ -------- -------- -x------ -------- -------- -x------ -------- |||| | |||||||| `------- -------- -------- x------- -------- ----x--- -------- -------- |||| | |||||||| N|||||||| |||||||| |||||||| |||||||| |||||||| |||||||| |||| | |||||||` -------- -------- -------x -------- -------- -------x -------- -------- |||| | ||||||`- -------- -------- ------x- -------- -------- --x----- -------- -------- |||| | |||||`-- -------- -------- -----x-- -------- -------- -----x-- -------- -------- |||| | ||||`--- -------- -------- ----x--- -------- -------- x------- -------- -------- |||| | |||`---- -------- -------- ---x---- -------- -------- ---x---- -------- -------- |||| | ||`----- -------- -------- --x----- -------- -------- -------- -------- ------x- |||| | |`------ -------- -------- -x------ -------- -------- -x------ -------- -------- |||| | `------- -------- -------- x------- -------- -------- -------- -------- ----x--- |||| | ||||||||S||||||||S|||||||| ||||||||E||||||||E|||||||| |||| | |||||||| |||||||| |||||||| -------- -------- -----x-- |||| | |||||||| |||||||| |||||||- -------- -------- x------- |||| | |||||||| |||||||| ||||||-- -------- -------- -------x |||| | |||||||| |||||||| |||||--- -------- -------- --x----- |||| | |||||||| |||||||| ||||---- -------- -------- -x------ |||| | |||||||| |||||||| |||----- -------- ----x--- -------- |||| | |||||||| |||||||| ||------ -------- -------- ---x---- |||| | |||||||| |||||||| |------- -------- ------x- -------- |||| | |||||||| |||||||| ||||||||S||||||||E||||||||E|||||||| |||| | |||||||| |||||||| -------- -------- -----x-- -------- |||| | |||||||| |||||||- -------- -------- x------- -------- |||| | |||||||| ||||||-- -------- -------- -------x -------- |||| | |||||||| |||||--- -------- -------- --x----- -------- |||| | |||||||| ||||---- -------- -------- -x------ -------- |||| | |||||||| |||----- -------- ----x--- -------- -------- |||| | |||||||| ||------ -------- -------- ---x---- -------- |||| | |||||||| |------- -------- ------x- -------- -------- |||| | |||||||| |||||||| ||||||||S||||||||E||||||||E|||||||| |||| | |||||||| -------- -------- -----x-- -------- -------- |||| | |||||||- -------- -------- x------- -------- -------- |||| | ||||||-- -------- -------- -------x -------- -------- |||| | |||||--- -------- -------- --x----- -------- -------- |||| | ||||---- -------- -------- -x------ -------- -------- |||| | |||----- -------- -------- -------- -------- ----x--- |||| | ||------ -------- -------- ---x---- -------- -------- |||| | |------- -------- -------- -------- -------- ------x- |||| | ||||||||S||||||||S|||||||| ||||||||E||||||||E|||||||| |||| | |||||||| |||||||| |||||||| |||||||| |||||||| |||||||` |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| |||||||| ||||||`- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| |||||||| |||||`-- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| |||||||| ||||`--- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| |||||||| |||`---- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| |||||||| ||`----- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| |||||||| |`------ |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| |||||||| `------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| |||||||| E|||| | |||||||| |||||||| |||||||| |||||||| |||||||` -------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| ||||||`- -------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| |||||`-- -------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| ||||`--- -------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| |||`---- -------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| ||`----- -------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| |`------ -------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| `------- -------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||||| E|||| | |||||||| |||||||| |||||||| |||||||` -------- -------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| ||||||`- -------- -------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||||`-- -------- -------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| ||||`--- -------- -------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |||`---- -------- -------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| ||`----- -------- -------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| |`------ -------- -------- |||| ----------------------------------------------------- | |||||||| |||||||| |||||||| `------- -------- -------- |||| ----------------------------------------------------- | ||||||||S||||||||S|||||||| ||||