Both sides previous revisionPrevious revisionNext revision | Previous revision |
en:templates:dlls [2018/08/13 04:36] – prokushev | en:templates:dlls [2024/11/12 14:39] (current) – prokushev |
---|
| |
^ [[en:docs:os2:modules|OS/2 DLLs]] ^^ | ^ [[en:docs:os2:modules|OS/2 DLLs]] ^^ |
| Base API | [[en:docs:os2:modules:doscalls|doscalls]] [[en:docs:os2:modules:emxwrap|emxwrap]] [[en:docs:os2:modules:sub32|sub32]] [[en:docs:os2:modules:ansicall|ansicall]] [[en:docs:os2:modules:nls|nls]] [[en:docs:os2:modules:msg|msg]] [[en:docs:os2:modules:moncalls|moncalls]] [[en:docs:os2:modules:kbdcalls|kbdcalls]] [[en:docs:os2:modules:moucalls|moucalls]] [[en:docs:os2:modules:viocalls|viocalls]] [[en:docs:os2:modules:sesmgr|sesmgr]] [[en:docs:os2:modules:bkscalls|bkscalls]] [[en:docs:os2:modules:bmscalls|bmscalls]] [[en:docs:os2:modules:bvscalls|bvscalls]] [[en:docs:os2:modules:nampipes|nampipes]] [[en:docs:os2:modules:quecalls|quecalls]] [[en:docs:os2:modules:os2char|os2char]] | | | Base API | [[en:docs:os2:modules:doscalls|DOSCALLS]] [[en:docs:os2:modules:emxwrap|EMXWRAP]] [[en:docs:os2:modules:sub32|SUB32]] [[en:docs:os2:modules:ansicall|ANSICALL]] [[en:docs:os2:modules:nls|NLS]] [[en:docs:os2:modules:msg|MSG]] [[en:docs:os2:modules:moncalls|MONCALLS]] [[en:docs:os2:modules:kbdcalls|KBDCALLS]] [[en:docs:os2:modules:moucalls|MOUCALLS]] [[en:docs:os2:modules:viocalls|VIOCALLS]] [[en:docs:os2:modules:sesmgr|SESMGR]] [[en:docs:os2:modules:bkscalls|BKSCALLS]] [[en:docs:os2:modules:bmscalls|BMSCALLS]] [[en:docs:os2:modules:bvscalls|BVSCALLS]] [[en:docs:os2:modules:nampipes|NAMPIPES]] [[en:docs:os2:modules:quecalls|QUECALLS]] [[en:docs:os2:modules:os2char|OS2CHAR]] | |
| Bidirectional NLS | [[en:docs:os2:modules:bdcalls|bdcalls]] [[en:docs:os2:modules:bdcalls32|bdcalls32]] [[en:docs:os2:modules:bdime|bdime]] [[en:docs:os2:modules:bdbvh|bdbvh]] [[en:docs:os2:modules:bdview|bdview]] [[en:docs:os2:modules:bdwpcls|bdwpcls]] [[en:docs:os2:modules:bidipm|bidipm]] [[en:docs:os2:modules:pmbidi|pmbidi]] | | | Bidirectional NLS | [[en:docs:os2:modules:bdcalls|BDCALLS]] [[en:docs:os2:modules:bdcalls32|BDCALLS32]] [[en:docs:os2:modules:bdime|BDIME]] [[en:docs:os2:modules:bdbvh|BDBVH]] [[en:docs:os2:modules:bdview|BDVIEW]] [[en:docs:os2:modules:bdwpcls|BDWPCLS]] [[en:docs:os2:modules:bidipm|BIDIPM]] [[en:docs:os2:modules:pmbidi|PMBIDI]] | |
| Unicode API | [[en:docs:os2:modules:uconv|uconv]] [[en:docs:os2:modules:unikbd|unikbd]] [[en:docs:os2:modules:libuni|libuni]] | | | Unicode API | [[en:docs:os2:modules:uconv|UCONV]] [[en:docs:os2:modules:unikbd|UNIKBD]] [[en:docs:os2:modules:libuni|LIBUNI]] | |
| BVH (Base Video Handlers) | [[en:docs:os2:modules:bvhinit|bvhinit]] [[en:docs:os2:modules:bvhmpa|bvhmpa]] [[en:docs:os2:modules:bvhvga|bvhvga]] [[en:docs:os2:modules:bvhsvga|bvhsvga]] [[en:docs:os2:modules:bvhwndw|bvhwndw]] | | | BVH (Base Video Handlers) | [[en:docs:os2:modules:bvhinit|BVHINIT]] [[en:docs:os2:modules:bvhmpa|BVHMPA]] [[en:docs:os2:modules:bvhvga|BVHVGA]] [[en:docs:os2:modules:bvhsvga|BVHSVGA]] [[en:docs:os2:modules:bvhwndw|BVHWNDW]] | |
| GRADD subsystem | [[en:docs:os2:modules:vman|vman]] [[en:docs:os2:modules:softdraw|softdraw]] [[en:docs:os2:modules:gre2vman|gre2vman]] [[en:docs:os2:modules:gengradd|gengradd]] | | | GRADD subsystem | [[en:docs:os2:modules:vman|VMAN]] [[en:docs:os2:modules:softdraw|SOFTDRAW]] [[en:docs:os2:modules:gre2vman|GRE2VMAN]] [[en:docs:os2:modules:gengradd|GENGRADD]] | |
| IPF (Information Presentation facility) | [[en:docs:os2:modules:helpmgr|helpmgr]] [[en:docs:os2:modules:hpmgrmri|hpmgrmri]] [[en:docs:os2:modules:minxobj]] [[en:docs:os2:modules:ibmhmgr|ibmhmgr]] [[en:docs:os2:modules:newview|newview]] [[en:docs:os2:modules:minxmri]] [[en:docs:os2:modules:errtxt|errtxt]] | | | IPF (Information Presentation facility) | [[en:docs:os2:modules:helpmgr|HELPMGR]] [[en:docs:os2:modules:hpmgrmri|HPMGRMRI]] [[en:docs:os2:modules:MINXOBJ]] [[en:docs:os2:modules:ibmhmgr|IBMHMGR]] [[en:docs:os2:modules:newview|NEWVIEW]] [[en:docs:os2:modules:MINXMRI]] [[en:docs:os2:modules:errtxt|ERRTXT]] | |
| REXX | [[en:docs:os2:modules:rexx|rexx]] [[en:docs:os2:modules:rexxapi|rexxapi]] [[en:docs:os2:modules:rexxutil|rexxutil]] [[en:docs:os2:modules:regina]] | | | REXX | [[en:docs:os2:modules:rexx|REXX]] [[en:docs:os2:modules:rexxapi|REXXAPI]] [[en:docs:os2:modules:rexxutil|REXXUTIL]] [[en:docs:os2:modules:REGINA]] | |
| The core PM DLL's |[[en:docs:os2:modules:pmmerge|pmmerge]] [[en:docs:os2:modules:pmmrgres|pmmrgres]] [[en:docs:os2:modules:pmshapi|pmshapi]] [[en:docs:os2:modules:pmshltkt|pmshltkt]] [[en:docs:os2:modules:pmgre|pmgre]] [[en:docs:os2:modules:pmgpi|pmgpi]] [[en:docs:os2:modules:pmdrag|pmdrag]] [[en:docs:os2:modules:pmctls|pmctls]] [[en:docs:os2:modules:pmmle|pmmle]] [[en:docs:os2:modules:pmspl|pmspl]] [[en:docs:os2:modules:pmviop|pmviop]] [[en:docs:os2:modules:pmwin|pmwin]] | | | The core PM DLL's |[[en:docs:os2:modules:pmmerge|PMMERGE]] [[en:docs:os2:modules:pmmrgres|PMMRGRES]] [[en:docs:os2:modules:pmshapi|PMSHAPI]] [[en:docs:os2:modules:pmshltkt|PMSHLTKT]] [[en:docs:os2:modules:pmgre|PMGRE]] [[en:docs:os2:modules:pmgpi|PMGPI]] [[en:docs:os2:modules:pmdrag|PMDRAG]] [[en:docs:os2:modules:pmctls|PMCTLS]] [[en:docs:os2:modules:pmmle|PMMLE]] [[en:docs:os2:modules:pmspl|PMSPL]] [[en:docs:os2:modules:pmviop|PMVIOP]] [[en:docs:os2:modules:pmwin|PMWIN]] | |
| Open32 | [[en:docs:os2:modules:pmwinx|pmwinx]] [[en:docs:os2:modules:mirrors|mirrors]] [[en:docs:os2:modules:registry|registry]] | | | Open32 | [[en:docs:os2:modules:pmwinx|PMWINX]] [[en:docs:os2:modules:mirrors|MIRRORS]] [[en:docs:os2:modules:registry|REGISTRY]] | |
| Intelligent Font Interface drivers | [[en:docs:os2:modules:pmatm|pmatm]] [[en:docs:os2:modules:truetype|truetype]] [[en:docs:os2:modules:pmunif|pmunif]] [[en:docs:os2:modules:freetype|freetype]] [[en:docs:os2:modules:pmpre|pmpre]] | | | Intelligent Font Interface drivers | [[en:docs:os2:modules:pmatm|PMATM]] [[en:docs:os2:modules:truetype|TRUETYPE]] [[en:docs:os2:modules:pmunif|PMUNIF]] [[en:docs:os2:modules:freetype|FREETYPE]] [[en:docs:os2:modules:pmpre|PMPRE]] | |
| Data Exchange | [[en:docs:os2:modules:pmclip|pmclip]] [[en:docs:os2:modules:pmdde|pmdde]] [[en:docs:os2:modules:pmddeml|pmddeml]] | | | Data Exchange | [[en:docs:os2:modules:pmclip|PMCLIP]] [[en:docs:os2:modules:pmdde|PMDDE]] [[en:docs:os2:modules:pmddeml|PMDDEML]] | |
| VDM PM interface | [[en:docs:os2:modules:pmvdmh|pmvdmh]] [[en:docs:os2:modules:pmvdmp|pmvdmp]] [[en:docs:os2:modules:seamless|seamless]] [[en:docs:os2:modules:shield|shield]] | | | VDM PM interface | [[en:docs:os2:modules:pmvdmh|PMVDMH]] [[en:docs:os2:modules:pmvdmp|PMVDMP]] [[en:docs:os2:modules:seamless|SEAMLESS]] [[en:docs:os2:modules:shield|SHIELD]] | |
| WPS | [[en:docs:os2:modules:pmwp|pmwp]] [[en:docs:os2:modules:pmwpmri|pmwpmri]] [[en:docs:os2:modules:pmvddrop|pmvddrop]] | | | WPS | [[en:docs:os2:modules:pmwp|PMWP]] [[en:docs:os2:modules:pmwpmri|PMWPMRU]] [[en:docs:os2:modules:pmvddrop|PMVDDROP]] | |
| Miscellaneous | [[en:docs:os2:modules:pmpic|pmpic]] [[en:docs:os2:modules:pmtkt|pmtkt]] | | | Miscellaneous | [[en:docs:os2:modules:pmpic|PMPIC]] [[en:docs:os2:modules:pmtkt|PMTKT]] [[en:docs:os2:modules:mvdm|MVDM]] | |
| | SOM API | [[en:docs:os2:modules:som|SOM]] [[en:docs:os2:modules:somc|SOMC]] | |
| |
| |
<diagram> | <diagram> |
| AAA | | | | | | | | | | | | | | | | | | | | | | |AAA=[[en:docs:os2:modules:KAL]] | | AAA | | | | | | | | | | | | | | | | | | | | | | |AAA=[[en:docs:os2:modules:KAL]] |
| |!@1 | | | | | | | | | | | | | | | | | | | | | | | | | | |!@1 | | | | | | | | | | | | | | | | | | | | | | | | |
| |)@22|- |-| BBB | | | | | | | | | | | | | | | | | | |BBB=[[en:docs:os2:modules:DOSCALLS]] | | |)@22|- |-| BBB |-|- |-|- |-|-|-|-|.| | | | | | | | | |BBB=[[en:docs:os2:modules:DOSCALLS]] |
| |!@4 | | | |!@1 | | | | | | | | | | | | | | | | | | | | | | |!@4 | | | |!@1 | | | | | | | | | |!| | | | | | | | | | |
| BVH | | |! | | | | | | | | | | | | | | | | | | | |BVH=Base Video Handlers | | BVH | | |)@22|-| BVS |.@8 | | | | |!| | | | | | | | | |BVH=Base Video Handlers|BVS=[[en:docs:os2:modules:BVSCALLS]] |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | | | |! | | | | |!| | | | | | | | | | |
| | | | | |)@22|-| CCC | | | | | | | | | | | | | | | |CCC=[[en:docs:os2:modules:NLS]] | | | | | | |)@22|-| BKS |+@8 | FFF |-@8 |'| | | | | | | | | | | | |BKS=[[en:docs:os2:modules:BKSCALLS]]|FFF=[[en:docs:os2:modules:EMXWRAP]] ([[en:docs:os2:modules:SUB32]]) |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | | | |! | |!@1 | | | | | | | | | | | | | |
| | | | | |)@22|-| DDD | | | | | | | | | | | | | | | |DDD=[[en:docs:os2:modules:MSG]] | | | | | | |)@22|-| BMS |(@8 | |)@22 | O2C | | | | | | | | | | | |BMS=[[en:docs:os2:modules:BMSCALLS]]|O2C=[[en:docs:os2:modules:OS2CHAR2]] |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | | | |! | |! | | | | | | | | | | | | | |
| | | | | |)@22|-| ANS | | | | | | | | | | | | | | | |ANS=[[en:docs:os2:modules:ANSICALL]] | | | | | | |)@22|-| MON |'@8 | |` | C1632 | | | | | | | | | | | |MON=[[en:docs:os2:modules:MONCALLS]]|C1632=[[en:docs:os2:modules:CON3216]] |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | | | | | | | | | | | | | | | | | | | |
| | | | | |)@22|-| EEE | | | | | | | | | | | | | | | |EEE=[[en:docs:os2:modules:SESMGR]] | | | | | | |)@22|-| KBD | | | | | | | | | | | | | | | |KBD=[[en:docs:os2:modules:KBDCALLS]] |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | | | | | | | | | | | | | | | | | | | |
| | | | | |)@22|-| BVS | | | | | | | | | | | | | | | |BVS=[[en:docs:os2:modules:BVSCALLS]] | | | | | | |)@22|-| MOU | | | | | | | | | | | | | | | |MOU=[[en:docs:os2:modules:MOUCALLS]] |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | | | | | | | | | | | | | | | | | | | |
| | | | | |)@22|-| MON | | | | | | | | | | | | | | | |MON=[[en:docs:os2:modules:MONCALLS]] | | | | | | |)@22|-| VIO | | | | | | | | | | | | | | | |VIO=[[en:docs:os2:modules:VIOCALLS]] |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | | | | | | | | | | | | | | | | | | | |
| | | | | |)@22|-| KBD | | | | | | | | | | | | | | | |KBD=[[en:docs:os2:modules:KBDCALLS]] | | | | | | |)@22|-| NAM | | | | | | | | | | | | | | | |NAM=[[en:docs:os2:modules:NAMPIPES]] |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | | | | | | | | | | | | | | | | | | | |
| | | | | |)@22|-| MOU | | | | | | | | | | | | | | | |MOU=[[en:docs:os2:modules:MOUCALLS]] | | | | | | |)@22|-| QUE | | | | | | | | | | | | | | | |QUE=[[en:docs:os2:modules:QUECALLS]] |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | | | | | | | | | | | | | | | | | | | |
| | | | | |)@22|-| VIO | | | | | | | | | | | | | | | |VIO=[[en:docs:os2:modules:VIOCALLS]] | | | | | | |)@22|-| CHR | | | | | | | | | | | | | | | |CHR=[[en:docs:os2:modules:OS2CHAR]] |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | | | | | | | | | | | | | | | | | | | |
| | | | | |)@22|-| FFF | | | | | | | | | | | | | | | |FFF=[[en:docs:os2:modules:EMXWRAP]] ([[en:docs:os2:modules:SUB32]]) | | | | | | |)@22|-| CCC | | | | | | | | | | | | | | | |CCC=[[en:docs:os2:modules:NLS]] |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | | | | | | | | | | | | | | | | | | | |
| | | | | |)@22|-| BKS | | | | | | | | | | | | | | | |BKS=[[en:docs:os2:modules:BKSCALLS]] | | | | | | |)@22|-| DDD | | | | | | | | | | | | | | | |DDD=[[en:docs:os2:modules:MSG]] |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | | | | | | | | | | | | | | | | | | | |
| | | | | |)@22|-| BMS | | | | | | | | | | | | | | | |BMS=[[en:docs:os2:modules:BMSCALLS]] | | | | | | |)@22|-| ANS | | | | | | | | | | | | | | | |ANS=[[en:docs:os2:modules:ANSICALL]] |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | | | | | | | | | | | | | | | | | | | |
| | | | | |)@22|-| NAM | | | | | | | | | | | | | | | |NAM=[[en:docs:os2:modules:NAMPIPES]] | | | | | | |)@22|-| EEE | | | | | | | | | | | | | | | |EEE=[[en:docs:os2:modules:SESMGR]] |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | | | | | | | | | | | | | | | | | | | |
| | | | | |)@22|-| QUE | | | | | | | | | | | | | | | |QUE=[[en:docs:os2:modules:QUECALLS]] | | | | | | |)@22|-| PMC |~ |~|~|~|~|~|~|~|~| PMS | | | |PMC=[[en:docs:os2:modules:PMCLIENT]]|PMS=PM Server (local or remote) |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | |! | | | | | | | | | | | | | | | | | |
| | | | | |)@22|-| CHR | | | | | | | | | | | | | | | |CHR=[[en:docs:os2:modules:OS2CHAR]] | | | | | | |! | | |` |-| PMM | | | | | | | | | | | | |PMM=[[en:docs:os2:modules:PMMERGE]] |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | |! | | | | | |!| | | | | | | | | | | | | | |
| | | | | |)@22|-| PMC |~ |~|~|~|~|~|~|~|~| PMS | | | |PMC=[[en:docs:os2:modules:PMCLIENT]]|PMS=PM Server (local or remote) | | | | | | |! | | | | | |)|-| GRE | | | | | | | | | |GRE=[[en:docs:os2:modules:PMGRE]] |
| | | | | |! | | |!| | | | | | | | | | | | | | | | | | | | | | | |! | | | | | |!| | | | | | | | | | | | | | |
| | | | | |! | | |`|-| PMM | | | | | | | | | | | | |PMM=[[en:docs:os2:modules:PMMERGE]] | | | | | | |! | | | | | |)|-| SHL | | | | | | | | | |SHL=[[en:docs:os2:modules:PMSHAPI]] |
| | | | | |! | | | | | |!| | | | | | | | | | | | | | | | | | | | |! | | | | | |!| | | | | | | | | | | | | | |
| | | | | |! | | | | | |)|-| GRE | | | | | | | | | |GRE=[[en:docs:os2:modules:PMGRE]] | | | | | | |! | | | | | |)|-| SHT | | | | | | | | | |SHT=[[en:docs:os2:modules:PMSHLTKT]] |
| | | | | |! | | | | | |!| | | | | | | | | | | | | | | | | | | | |! | | | | | |!| | | | | | | | | | | | | | |
| | | | | |! | | | | | |)|-| SHL | | | | | | | | | |SHL=[[en:docs:os2:modules:PMSHAPI]] | | | | | | |! | | | | | |)|-| CTL | | | | | | | | | |CTL=[[en:docs:os2:modules:PMCTLS]] |
| | | | | |! | | | | | |!| | | | | | | | | | | | | | | | | | | | |! | | | | | |!| | |!| | | | | | | | | | | |
| | | | | |! | | | | | |)|-| SHT | | | | | | | | | |SHT=[[en:docs:os2:modules:PMSHLTKT]] | | | | | | |! | | | | | |!| | |)|-| DRG | | | | | | |DRG=[[en:docs:os2:modules:PMDRAG]] |
| | | | | |! | | | | | |!| | | | | | | | | | | | | | | | | | | | |! | | | | | |!| | |!| | | | | | | | | | | |
| | | | | |! | | | | | |)|-| CTL | | | | | | | | | |CTL=[[en:docs:os2:modules:PMCTLS]] | | | | | | |! | | | | | |!| | |`|-| MLE | | | | | | |MLE=[[en:docs:os2:modules:PMMLE]] |
| | | | | |! | | | | | |!| | |!| | | | | | | | | | | | | | | | | |! | | | | | |!| | | | | | | | | | | | | | |
| | | | | |! | | | | | |!| | |)|-| DRG | | | | | | |DRG=[[en:docs:os2:modules:PMDRAG]] | | | | | | |! | | | | | |)|-| GPI | | | | | | | | | |GPI=[[en:docs:os2:modules:PMGPI]] |
| | | | | |! | | | | | |!| | |!| | | | | | | | | | | | | | | | | |! | | | | | |!| | | | | | | | | | | | | | |
| | | | | |! | | | | | |!| | |`|-| MLE | | | | | | |MLE=[[en:docs:os2:modules:PMMLE]] | | | | | | |! | | | | | |`|-| WIN | | | | | | | | | |WIN=[[en:docs:os2:modules:PMWIN]] |
| | | | | |! | | | | | |!| | | | | | | | | | | | | | | | | | | | |! | | | | | | | | | | | | | | | | | | | | |
| | | | | |! | | | | | |)|-| GPI | | | | | | | | | |GPI=[[en:docs:os2:modules:PMGPI]] | | | | | | |`@22|-| UTL | | | | | | | | | | | | | | | |UTL=[[en:docs:os2:modules:UTLAPI]] |
| | | | | |! | | | | | |!| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
| | | | | |! | | | | | |`|-| WIN | | | | | | | | | |WIN=[[en:docs:os2:modules:PMWIN]] | | | | | | | | | | | | | | | | | | | | | | | | | | | |
| | | | | |! | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RGN |-@8 |.| | | | | | | | | | | | | |RGN=[[en:docs:os2:modules:REGINA]] |
| | | | | |`@22|-| UTL | | | | | | | | | | | | | | | |UTL=[[en:docs:os2:modules:UTLAPI]] | | | | | | | | | | | | |!| | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |)|-| RXX | | | | | | | | | |RXX=[[en:docs:os2:modules:REXX]] |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |!| | | | | | | | | | | | | | |
| | | | | | | | RGN |-@8 |.| | | | | | | | | | | | | |RGN=[[en:docs:os2:modules:REGINA]] | | | | | | | | | | | | |)|-| RXA | | | | | | | | | |RXA=[[en:docs:os2:modules:REXXAPI]] |
| | | | | | | | | | | |!| | | | | | | | | | | | | | | | | | | | | | | | | | |!| | | | | | | | | | | | | | |
| | | | | | | | | | | |)|-| RXX | | | | | | | | | |RXX=[[en:docs:os2:modules:REXX]] | |
| | | | | | | | | | | |!| | | | | | | | | | | | | | | |
| | | | | | | | | | | |)|-| RXA | | | | | | | | | |RXA=[[en:docs:os2:modules:REXXAPI]] | |
| | | | | | | | | | | |!| | | | | | | | | | | | | | | |
</diagram> | </diagram> |
| |