{\rtf1\ansi\ansicpg1252\uc1\deff0\stshfdbch0\stshfloch0\stshfhich0\stshfbi0\deflang1033\deflangfe1033{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f1\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;} {\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}{\f3\froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}{\f10\fnil\fcharset2\fprq2{\*\panose 05000000000000000000}Wingdings;} {\f35\fswiss\fcharset0\fprq2{\*\panose 020b0604030504040204}Tahoma;}{\f36\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Arial Narrow;}{\f37\froman\fcharset0\fprq2{\*\panose 00000000000000000000}TheSansMonoConNormal;} {\f38\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Trebuchet MS;}{\f39\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}CommonBullets;}{\f40\froman\fcharset238\fprq2 Times New Roman CE;}{\f41\froman\fcharset204\fprq2 Times New Roman Cyr;} {\f43\froman\fcharset161\fprq2 Times New Roman Greek;}{\f44\froman\fcharset162\fprq2 Times New Roman Tur;}{\f45\froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f46\froman\fcharset178\fprq2 Times New Roman (Arabic);} {\f47\froman\fcharset186\fprq2 Times New Roman Baltic;}{\f48\froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f50\fswiss\fcharset238\fprq2 Arial CE;}{\f51\fswiss\fcharset204\fprq2 Arial Cyr;}{\f53\fswiss\fcharset161\fprq2 Arial Greek;} {\f54\fswiss\fcharset162\fprq2 Arial Tur;}{\f55\fswiss\fcharset177\fprq2 Arial (Hebrew);}{\f56\fswiss\fcharset178\fprq2 Arial (Arabic);}{\f57\fswiss\fcharset186\fprq2 Arial Baltic;}{\f58\fswiss\fcharset163\fprq2 Arial (Vietnamese);} {\f60\fmodern\fcharset238\fprq1 Courier New CE;}{\f61\fmodern\fcharset204\fprq1 Courier New Cyr;}{\f63\fmodern\fcharset161\fprq1 Courier New Greek;}{\f64\fmodern\fcharset162\fprq1 Courier New Tur;}{\f65\fmodern\fcharset177\fprq1 Courier New (Hebrew);} {\f66\fmodern\fcharset178\fprq1 Courier New (Arabic);}{\f67\fmodern\fcharset186\fprq1 Courier New Baltic;}{\f68\fmodern\fcharset163\fprq1 Courier New (Vietnamese);}{\f390\fswiss\fcharset238\fprq2 Tahoma CE;}{\f391\fswiss\fcharset204\fprq2 Tahoma Cyr;} {\f393\fswiss\fcharset161\fprq2 Tahoma Greek;}{\f394\fswiss\fcharset162\fprq2 Tahoma Tur;}{\f395\fswiss\fcharset177\fprq2 Tahoma (Hebrew);}{\f396\fswiss\fcharset178\fprq2 Tahoma (Arabic);}{\f397\fswiss\fcharset186\fprq2 Tahoma Baltic;} {\f398\fswiss\fcharset163\fprq2 Tahoma (Vietnamese);}{\f399\fswiss\fcharset222\fprq2 Tahoma (Thai);}{\f400\fswiss\fcharset238\fprq2 Arial Narrow CE;}{\f401\fswiss\fcharset204\fprq2 Arial Narrow Cyr;}{\f403\fswiss\fcharset161\fprq2 Arial Narrow Greek;} {\f404\fswiss\fcharset162\fprq2 Arial Narrow Tur;}{\f407\fswiss\fcharset186\fprq2 Arial Narrow Baltic;}{\f413\froman\fcharset161\fprq2 TheSansMonoConNormal Greek;}{\f420\fswiss\fcharset238\fprq2 Trebuchet MS CE;} {\f421\fswiss\fcharset204\fprq2 Trebuchet MS Cyr;}{\f423\fswiss\fcharset161\fprq2 Trebuchet MS Greek;}{\f424\fswiss\fcharset162\fprq2 Trebuchet MS Tur;}{\f427\fswiss\fcharset186\fprq2 Trebuchet MS Baltic;}}{\colortbl;\red0\green0\blue0; \red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128; \red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{\ql \li0\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext0 Normal;}{ \s1\ql \li0\ri0\sb360\sa120\keepn\widctlpar\faauto\outlinelevel0\adjustright\rin0\lin0\itap0 \b\f1\fs36\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 heading 1;}{ \s2\ql \li0\ri0\sb360\sa120\keepn\widctlpar\faauto\outlinelevel1\adjustright\rin0\lin0\itap0 \b\fs29\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 heading 2;}{ \s3\ql \li0\ri0\sb360\sa120\keepn\widctlpar\faauto\outlinelevel2\adjustright\rin0\lin0\itap0 \b\f36\fs25\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 heading 3;}{ \s4\ql \li0\ri0\sb360\sa120\keepn\widctlpar\faauto\outlinelevel3\adjustright\rin0\lin0\itap0 \b\fs24\expnd-1\expndtw-6\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 heading 4;}{ \s5\ql \li0\ri0\sb240\sa60\widctlpar\faauto\outlinelevel4\adjustright\rin0\lin0\itap0 \b\f36\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 heading 5;}{\*\cs10 \additive \ssemihidden Default Paragraph Font;}{\* \ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \fs20\lang1024\langfe1024\cgrid\langnp1024\langfenp1024 \snext11 \ssemihidden Normal Table;}{\s15\ql \fi567\li0\ri0\sb60\sa60\widctlpar\faauto\adjustright\rin0\lin0\itap0 \f1\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \snext15 \sautoupd Story Text;}{\s16\qr \li0\ri0\sa120\keepn\pagebb\widctlpar\faauto\outlinelevel0\adjustright\rin0\lin0\itap0 \shad\f1\fs48\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon15 \snext16 \sautoupd Story Chapter;}{\s17\ql \li0\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \f2\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext17 Plain Text;}{\s18\ql \li0\ri0\sb60\sa60\widctlpar\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536\faauto\adjustright\rin0\lin0\itap0 \f1\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext18 \sautoupd base text;}{ \s19\ql \li0\ri0\sb60\sa60\widctlpar\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536\faauto\adjustright\rin0\lin0\itap0 \f1\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext19 \sautoupd aw base text;}{ \s20\ql \li567\ri0\sb60\widctlpar\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536\faauto\adjustright\rin0\lin567\itap0 \f2\fs18\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon21 \snext20 \sautoupd aw code start;}{ \s21\ql \li567\ri0\widctlpar\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536\faauto\adjustright\rin0\lin567\itap0 \f2\fs18\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon19 \snext21 \sautoupd aw code body;}{ \s22\ql \li567\ri0\sa60\widctlpar\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536\faauto\adjustright\rin0\lin567\itap0 \f2\fs18\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon21 \snext22 \sautoupd aw code end;}{\*\cs23 \additive \b\i aw emphasis;}{\s24\qr \li0\ri0\sa480\pagebb\widctlpar\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536\faauto\outlinelevel0\adjustright\rin0\lin0\itap0 \shad\f1\fs48\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon19 \snext24 \sautoupd aw chapter;}{\s25\ql \li0\ri0\sb120\sa120\widctlpar\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536\faauto\outlinelevel1\adjustright\rin0\lin0\itap0 \b\f1\fs36\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon19 \snext25 \sautoupd aw heading 1;}{\s26\ql \li0\ri0\sb120\sa120\widctlpar\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536\faauto\adjustright\rin0\lin0\itap0 \i\f1\fs28\ul\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon19 \snext26 \sautoupd aw heading 2;}{ \s27\qr \li0\ri0\sa480\widctlpar\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536\faauto\outlinelevel0\adjustright\rin0\lin0\itap0 \shad\caps\f1\fs48\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon24 \snext27 \sautoupd aw chapter title;} {\s28\ql \fi-360\li360\ri0\sb60\sa60\widctlpar\jclisttab\tx360\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536{\*\pn \pnlvlbody\ilvl0\ls11\pnrnot0\pndec }\faauto\ls11\adjustright\rin0\lin360\itap0 \f1\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon19 \snext28 \sautoupd aw list body;}{\s29\ql \fi-357\li357\ri0\sb120\sa60\widctlpar\jclisttab\tx360\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536{\*\pn \pnlvlbody\ilvl0\ls11\pnrnot0\pndec }\faauto\ls11\adjustright\rin0\lin357\itap0 \f1\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon28 \snext29 \sautoupd aw list start;}{\s30\ql \fi-357\li357\ri0\sb60\sa120\widctlpar \jclisttab\tx360\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536{\*\pn \pnlvlbody\ilvl0\ls11\pnrnot0\pndec }\faauto\ls11\adjustright\rin0\lin357\itap0 \f1\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon28 \snext30 \sautoupd aw list end;}{\s31\ql \li0\ri0\sb60\sa60\widctlpar\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536\faauto\adjustright\rin0\lin0\itap0 \f1\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon19 \snext31 \sautoupd aw table body;}{ \s32\qc \li0\ri0\sb480\sa480\widctlpar\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536\faauto\outlinelevel0\adjustright\rin0\lin0\itap0 \i\shad\f1\fs48\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon24 \snext32 aw figure holder;}{\* \cs33 \additive \i \sbasedon10 aw quoted;}{\s34\ql \li567\ri567\sb60\sa60\widctlpar\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536\faauto\adjustright\rin567\lin567\itap0 \i\f1\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon19 \snext34 aw sidebar;}{\s35\ql \li0\ri0\sb120\sa120\widctlpar\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536\faauto\adjustright\rin0\lin0\itap0 \i\f1\fs24\ul\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon26 \snext35 aw heading 3;}{\s36\ql \li567\ri0\sb60\sa60\widctlpar\tx567\tx1134\tx1701\tx2268\tx2835\tx3402\tx3969\tx4536\faauto\adjustright\rin0\lin567\itap0 \f2\fs18\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon21 \snext36 aw code one-line;}{ \s37\ql \li0\ri0\sa120\widctlpar\tqc\tx4153\tqr\tx8306\faauto\adjustright\rin0\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext37 header;}{\s38\ql \li0\ri0\sa120\widctlpar \tqc\tx4153\tqr\tx8306\faauto\adjustright\rin0\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext38 footer;}{\*\cs39 \additive \sbasedon10 page number;}{\*\cs40 \additive \i \sbasedon10 Emphasis;}{ \s41\ql \li0\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \cbpat9 \f35\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext41 \ssemihidden Document Map;}{\s42\ql \fi360\li0\ri0\sl-260\slmult0 \widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext42 Body Text;}{\s43\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon42 \snext43 Body Text First;}{\s44\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext42 Body Text Cont;}{\s45\ql \fi-576\li576\ri0\sb120\sa120\sl-260\slmult0\keep\widctlpar\tx216\tx576\faauto\adjustright\rin0\lin576\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext45 Bullet;}{ \s46\ql \fi-576\li576\ri0\sb240\sa120\sl-260\slmult0\keep\widctlpar\tx216\tx576\faauto\adjustright\rin0\lin576\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon45 \snext45 Bullet First;}{ \s47\ql \fi-576\li576\ri0\sb120\sa240\sl-260\slmult0\keep\widctlpar\tx216\tx576\faauto\adjustright\rin0\lin576\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon45 \snext42 Bullet Last;}{\s48\ql \li0\ri0\sb360\sa360\sl-280\slmult0 \nowidctlpar\brdrt\brdrs\brdrw10\brsp200 \brdrb\brdrs\brdrw10\brsp200 \faauto\adjustright\rin0\lin0\rtlgutter\itap0 \f36\fs21\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext42 Note/Tip/Caution;}{\s49\ql \li0\ri144\sl-240\slmult0 \widctlpar\faauto\adjustright\rin144\lin0\itap0 \b\f37\fs20\cf13\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext49 Code Bold;}{\s50\ql \li0\ri0\sa240\keepn\widctlpar\faauto\adjustright\rin0\lin0\itap0 \b\caps\f1\fs28\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext51 Chapter Number;}{\s51\ql \li0\ri0\sb480\sa480\widctlpar\faauto\adjustright\rin0\lin0\itap0 \b\f1\fs60\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext0 Chapter Title;}{ \s52\ql \li0\ri0\sb240\sa240\sl-280\slmult0\widctlpar\tx576\faauto\adjustright\rin0\lin0\itap0 \i\fs22\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \snext42 Figure Caption;}{\s53\ql \li0\ri0\sb240\sa120\sl-280\slmult0\widctlpar \tx576\faauto\adjustright\rin0\lin0\itap0 \i\fs22\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon52 \snext54 Code Caption;}{\s54\ql \li0\ri144\sb160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext0 Code First;}{\s55\ql \li0\ri144\sb160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \b\f37\fs20\cf13\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon54 \snext55 Code First Bold;}{\s56\ql \li0\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext42 Code Last;}{\s57\ql \li0\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \b\f37\fs20\cf13\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon56 \snext57 Code Last Bold;}{\s58\ql \fi-1152\li1152\ri0\sb120\sa120\widctlpar\tx792\tx1080\faauto\adjustright\rin0\lin1152\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon59 \snext0 Num Sub List;}{\s59\ql \fi-1152\li1152\ri0\sb120\sa120\widctlpar\tx792\tx1080\faauto\adjustright\rin0\lin1152\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext59 Bullet Sub List;}{\s60\ql \fi-576\li576\ri0\sb120\sa240\sl-260\slmult0\keep\widctlpar\tx216\tx576\faauto\adjustright\rin0\lin576\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 Num List;}{ \s61\ql \li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon49 \snext61 Code;}{\s62\ql \fi-360\li360\ri0\sb120\sl-260\slmult0\keep\widctlpar \tx216\tx576\faauto\adjustright\rin0\lin360\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon46 \snext62 Bibliography;}{\s63\ql \fi-720\li720\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin720\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 \sautoupd \ssemihidden index 1;}{\s64\ql \fi-432\li720\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin720\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 \sautoupd \ssemihidden index 2;}{\s65\ql \fi-144\li720\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin720\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 \sautoupd \ssemihidden index 3;}{ \s66\ql \li0\ri0\sb240\widctlpar\faauto\adjustright\rin0\lin0\itap0 \b\f1\fs28\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext63 Index Letter;}{\s67\ql \li0\ri0\sb120\sl360\slmult1\widctlpar\faauto\adjustright\rin0\lin0\itap0 \b\f38\fs22\expnd-1\expndtw-6\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext42 Part Opener Text;}{\s68\ql \li288\ri288\sb240\widctlpar\faauto\adjustright\rin288\lin288\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \snext68 SB Code First;}{\s69\ql \fi-576\li576\ri0\sb120\sa240\sl-260\slmult0\keep\widctlpar\tx216\tx576\faauto\adjustright\rin0\lin576\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext69 Num List Last;}{\s70\ql \fi-576\li576\ri0\sb240\sa120\sl-260\slmult0\keep\widctlpar\tx216\tx576\faauto\adjustright\rin0\lin576\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext69 Num List First;}{\s71\ql \li0\ri0\sa240\widctlpar\faauto\adjustright\rin0\lin0\itap0 \b\caps\f1\fs28\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon50 \snext72 Part Number;}{\s72\ql \li0\ri0\sa480\widctlpar\faauto\adjustright\rin0\lin0\itap0 \b\f1\fs60\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon51 \snext0 Part Title;}{ \s73\ql \li0\ri0\sb240\sa240\keep\keepn\widctlpar\faauto\adjustright\rin0\lin0\itap0 \b\i\fs24\cf2\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext42 \sautoupd Production;}{\s74\qj \li432\ri432\sb320\sa240\sl-260\slmult0 \widctlpar\faauto\adjustright\rin432\lin432\itap0 \i\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon42 \snext42 Quote;}{\s75\ql \li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext75 Results;}{\s76\ql \li0\ri144\sb240\sl-240\slmult0\widctlpar\brdrt\brdrs\brdrw45\brsp100\brdrcf15 \faauto\adjustright\rin144\lin0\rtlgutter\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon54 \snext76 Results First;}{\s77\ql \li0\ri144\sa160\sl-240\slmult0\widctlpar\brdrb\brdrs\brdrw45\brsp100\brdrcf15 \faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon56 \snext77 Results Last;}{\s78\ql \li0\ri144\sb240\sa240\widctlpar\brdrt\brdrs\brdrw45\brsp100\brdrcf15 \brdrb\brdrs\brdrw45\brsp100\brdrcf15 \faauto\adjustright\rin144\lin0\rtlgutter\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext78 Results Single;}{\s79\ql \li288\ri288\sb120\sa120\widctlpar\faauto\adjustright\rin288\lin288\itap0 \f36\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext79 SB Body First;}{\s80\ql \fi-432\li763\ri0\sb240\sa120\widctlpar\tx216\tx475\faauto\adjustright\rin0\lin763\itap0 \f36\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon81 \snext83 SB Bullet First;}{\s81\ql \fi-475\li763\ri288\sb240\sa240\widctlpar\tx216\tx475\faauto\adjustright\rin288\lin763\itap0 \f36\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon82 \snext82 SB Num List First;}{ \s82\ql \fi-475\li763\ri288\sb240\sa240\widctlpar\tx216\tx475\faauto\adjustright\rin288\lin763\itap0 \f36\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext82 SB Num List;}{\s83\ql \fi-432\li720\ri288\sb120\sa120\widctlpar \tx216\tx475\faauto\adjustright\rin288\lin720\itap0 \f36\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon80 \snext83 SB Bullet;}{\s84\ql \fi-432\li720\ri288\sb120\sa240\widctlpar\tx216\tx475\faauto\adjustright\rin288\lin720\itap0 \f36\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon83 \snext79 SB Bullet Last;}{\s85\qc \li288\ri288\sb360\sa240\widctlpar\brdrt\brdrs\brdrw45\brsp20\brdrcf16 \brdrl\brdrs\brdrw45\brsp80\brdrcf16 \brdrb\brdrs\brdrw45\brsp20\brdrcf16 \brdrr\brdrs\brdrw45\brsp80\brdrcf16 \faauto\adjustright\rin288\lin288\rtlgutter\itap0 \cbpat16 \b\caps\f1\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext79 SB Head;}{ \s86\ql \fi504\li288\ri288\sb120\sa120\widctlpar\faauto\adjustright\rin288\lin288\itap0 \f36\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon79 \snext86 SB Body;}{\s87\ql \fi-475\li763\ri288\sb240\sa240\widctlpar \tx216\tx475\faauto\adjustright\rin288\lin763\itap0 \f36\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon82 \snext79 SB Num List Last;}{\s88\qc \li288\ri288\sb120\sa240\widctlpar\faauto\adjustright\rin288\lin288\itap0 \b\f1\fs21\ul\cf15\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext88 SB Subhead;}{\s89\ql \li288\ri288\sb240\sa240\widctlpar\faauto\adjustright\rin288\lin288\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon90 \snext89 SB Code Single;}{\s90\ql \li288\ri288\widctlpar\faauto\adjustright\rin288\lin288\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \snext90 SB Code;}{ \s91\ql \li0\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs21\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext91 Table Text;}{\s92\ql \li0\ri0\sb240\sa120\sl-280\slmult0\widctlpar\tx576\faauto\adjustright\rin0\lin0\itap0 \i\fs22\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon52 \snext93 Table Caption;}{\s93\ql \fi-720\li720\ri0\sb120\sa120\sl-240\slmult0\keepn\widctlpar\brdrt\brdrdot\brdrw10\brsp60 \faauto\adjustright\rin0\lin720\rtlgutter\itap0 \b\f36\fs21\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext91 Table Head;}{\s94\ql \li0\ri0\sb60\sa240\widctlpar\faauto\adjustright\rin0\lin0\itap0 \i\fs18\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon91 \snext42 Table Footnote;}{ \s95\ql \li0\ri0\sb120\sa120\sl-240\slmult0\keep\keepn\widctlpar\faauto\adjustright\rin0\lin0\itap0 \b\fs20\ul\cf15\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext91 Table Subhead;}{\s96\ql \li0\ri0\sa240\widctlpar\brdrb\brdrdot\brdrw10\brsp60 \faauto\adjustright\rin0\lin0\itap0 \fs21\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon91 \snext42 Table Text Last;}{\s97\ql \li360\ri0\sb240\sa120\widctlpar\faauto\adjustright\rin0\lin360\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon98 \snext98 Unnumbered First;}{\s98\ql \li360\ri0\sb120\widctlpar\faauto\adjustright\rin0\lin360\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext98 Unnumbered;}{ \s99\ql \li360\ri0\sb120\sa240\widctlpar\faauto\adjustright\rin0\lin360\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon98 \snext42 Unnumbered Last;}{\s100\qr \li0\ri0\sa240\sl-260\slmult0 \widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon74 \snext42 \sautoupd Quote Source;}{\s101\ql \fi-576\li1152\ri288\sb120\sa120\widctlpar\tx475\tx763\faauto\adjustright\rin288\lin1152\itap0 \f36\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon83 \snext101 SB Sub List;}{\s102\ql \li288\ri288\sa240\widctlpar\faauto\adjustright\rin288\lin288\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon90 \snext102 SB Code Last;}{\s103\qc \li0\ri0\sb360\sa240\widctlpar\brdrt\brdrs\brdrw45\brsp20\brdrcf1 \brdrl\brdrs\brdrw45\brsp80\brdrcf1 \brdrb\brdrs\brdrw45\brsp20\brdrcf1 \brdrr\brdrs\brdrw45\brsp80\brdrcf1 \faauto\adjustright\rin0\lin0\rtlgutter\itap0 \cbpat1 \b\f1\fs22\cf8\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon85 \snext0 Exercise Head;}{\s104\ql \li0\ri0\sb120\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \f36\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext104 \sautoupd Exercise Body;}{\s105\ql \li0\ri0\sb120\sa240\widctlpar\brdrb\brdrs\brdrw45\brsp240 \faauto\adjustright\rin0\lin0\itap0 \f36\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon79 \snext105 Exercise Body Last;}{\s106\ql \li0\ri0\sb120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \b\f1\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext106 Glossary Head;}{\s107\ql \li360\ri0\sb60\sa240\widctlpar\faauto\adjustright\rin0\lin360\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext107 Glossary Text;}{ \s108\qc \li0\ri0\sa120\widctlpar\faauto\outlinelevel0\adjustright\rin0\lin0\itap0 \f38\fs48\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext108 FM Title;}{ \s109\qc \li0\ri0\sa120\widctlpar\faauto\outlinelevel0\adjustright\rin0\lin0\itap0 \b\f38\fs24\cf15\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon108 \snext109 FM Subtitle;}{ \s110\qc \li0\ri0\sb360\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \b\caps\f1\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext110 FM Author;}{\s111\ql \li0\ri0\sb120\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs21\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext111 FM Copyright;}{\s112\ql \fi-288\li648\ri0\sb240\widctlpar\faauto\adjustright\rin0\lin648\itap0 \fs21\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext112 FM Copyright Credits;}{\s113\qc \li0\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \i\fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext113 FM Dedication;}{ \s114\ql \li0\ri0\sb480\sa480\widctlpar\faauto\adjustright\rin0\lin0\itap0 \b\f38\fs60\expnd-4\expndtw-20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon51 \snext114 FM Head;}{ \s115\ql \fi-288\li648\ri0\sa240\widctlpar\faauto\adjustright\rin0\lin648\itap0 \fs21\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon112 \snext111 FM Copyright Credits Last;}{\*\cs116 \additive \f37\fs20\cf11 \sbasedon10 Code Inline;}{ \s117\ql \li0\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs19\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext117 Footnote;}{\s118\ql \li0\ri144\sb120\sa120\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 \sbasedon0 \snext118 Code Single;}{\s119\ql \li0\ri0\sb240\sa240\keep\keepn\widctlpar\faauto\adjustright\rin0\lin0\itap0 \b\i\fs24\cf6\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon73 \snext119 Query;}{\s120\qc \li0\ri0\sb120\sa20\widctlpar\faauto\adjustright\rin0\lin0\itap0 \f1\fs18\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext0 \sautoupd Figure;}{\s121\ql \fi360\li0\ri0\sl-260\slmult0 \widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon42 \snext121 EndOfChapter;}{\s122\ql \li0\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext122 \ssemihidden footnote text;}{\*\cs123 \additive \super \sbasedon10 \ssemihidden footnote reference;}{\*\cs124 \additive \fs16 \sbasedon10 \ssemihidden annotation reference;}{ \s125\ql \li0\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext125 \ssemihidden annotation text;}{\s126\ql \li0\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \b\fs20\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon125 \snext125 \ssemihidden annotation subject;}{\s127\ql \li0\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \f35\fs16\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext127 \ssemihidden Balloon Text;}{\s128\ql \fi360\li0\ri0\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \b\fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \sbasedon42 \snext128 code i;}{ \s129\ql \fi-720\li720\ri0\widctlpar\faauto\adjustright\rin0\lin720\itap0 \f1\fs24\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 \sbasedon0 \snext129 Normal Indent;}{\s130\ql \li0\ri0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \i\f1\fs24\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 \sbasedon0 \snext130 Body Text 2;}}{\*\latentstyles\lsdstimax156\lsdlockeddef0}{\*\listtable{\list\listtemplateid-512352694\listsimple{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0 \levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\fi-360\li1800\jclisttab\tx1800\lin1800 }{\listname ;}\listid-132}{\list\listtemplateid-717181580\listsimple{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0 \levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\fi-360\li1440\jclisttab\tx1440\lin1440 }{\listname ;}\listid-131}{\list\listtemplateid37939640\listsimple{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0 \levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\fi-360\li1080\jclisttab\tx1080\lin1080 }{\listname ;}\listid-130}{\list\listtemplateid-1812542836\listsimple{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0 \levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\fi-360\li720\jclisttab\tx720\lin720 }{\listname ;}\listid-129}{\list\listtemplateid1149110430\listsimple{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0 \levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li1800\jclisttab\tx1800\lin1800 }{\listname ;}\listid-128}{\list\listtemplateid-2053205026\listsimple{\listlevel\levelnfc23\levelnfcn23 \leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listname ;}\listid-127}{\list\listtemplateid-565544336\listsimple{\listlevel\levelnfc23 \levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li1080\jclisttab\tx1080\lin1080 }{\listname ;}\listid-126}{\list\listtemplateid607014174\listsimple{\listlevel \levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li720\jclisttab\tx720\lin720 }{\listname ;}\listid-125}{\list\listtemplateid-698608588\listsimple {\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\fi-360\li360\jclisttab\tx360\lin360 }{\listname ;}\listid-120}{\list\listtemplateid-595062430\listsimple {\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li360\jclisttab\tx360\lin360 }{\listname ;}\listid-119}{\list\listtemplateid-1\listsimple {\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'01*;}{\levelnumbers;}}{\listname ;}\listid-2}{\list\listtemplateid-166693384{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0 \levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3906 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0 {\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel \levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0 \levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext \'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760 \jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid91172161 }{\list\listtemplateid67698719{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\fi-360\li360\jclisttab\tx360\lin360 }{\listlevel\levelnfc0\levelnfcn0\leveljc0 \leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'04\'00.\'01.;}{\levelnumbers\'01\'03;}\fi-432\li792\jclisttab\tx792\lin792 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0 {\leveltext\'06\'00.\'01.\'02.;}{\levelnumbers\'01\'03\'05;}\fi-504\li1224\jclisttab\tx1224\lin1224 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'08\'00.\'01.\'02.\'03.;}{\levelnumbers \'01\'03\'05\'07;}\fi-648\li1728\jclisttab\tx1728\lin1728 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0a\'00.\'01.\'02.\'03.\'04.;}{\levelnumbers\'01\'03\'05\'07\'09;}\fi-792\li2232 \jclisttab\tx2232\lin2232 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0c\'00.\'01.\'02.\'03.\'04.\'05.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b;}\fi-936\li2736 \jclisttab\tx2736\lin2736 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0e\'00.\'01.\'02.\'03.\'04.\'05.\'06.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d;}\fi-1080\li3240 \jclisttab\tx3240\lin3240 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'10\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f;}\fi-1224\li3744 \jclisttab\tx3744\lin3744 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'12\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.\'08.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f\'11;} \fi-1440\li4320\jclisttab\tx4320\lin4320 }{\listname ;}\listid322468441}{\list\listtemplateid-1048289994{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;} \fbias0 \fi-360\li960\jclisttab\tx960\lin960 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1680\jclisttab\tx1680\lin1680 }{\listlevel \levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2400\jclisttab\tx2400\lin2400 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0 \levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li3120\jclisttab\tx3120\lin3120 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext \'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3840\jclisttab\tx3840\lin3840 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4560 \jclisttab\tx4560\lin4560 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5280\jclisttab\tx5280\lin5280 }{\listlevel\levelnfc23 \levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li6000\jclisttab\tx6000\lin6000 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1 \levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6720\jclisttab\tx6720\lin6720 }{\listname ;}\listid750197609}{\list\listtemplateid-1850941578{\listlevel\levelnfc255\levelnfcn255\leveljc0\leveljcn0\levelfollow0 \levelstartat1\levelspace0\levelindent0{\leveltext\'01\'97;}{\levelnumbers;}\fbias0 \fi-360\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext \'01\u-3880 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li1080\jclisttab\tx1080\lin1080 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li1800\jclisttab\tx1800\lin1800 }{\listlevel \levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3928 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0 \levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3880 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2520\jclisttab\tx2520\lin2520 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext \'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li3240\jclisttab\tx3240\lin3240 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3928 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listname ;}\listid798111781}{\list\listtemplateid1405273894\listsimple{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s28\fi-360\li360 \jclisttab\tx360\lin360 }{\listname ;}\listid1076169485}{\list\listtemplateid67698719{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\fi-360\li360 \jclisttab\tx360\lin360 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'04\'00.\'01.;}{\levelnumbers\'01\'03;}\fi-432\li792\jclisttab\tx792\lin792 }{\listlevel\levelnfc0\levelnfcn0 \leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'06\'00.\'01.\'02.;}{\levelnumbers\'01\'03\'05;}\fi-504\li1224\jclisttab\tx1224\lin1224 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1 \levelspace0\levelindent0{\leveltext\'08\'00.\'01.\'02.\'03.;}{\levelnumbers\'01\'03\'05\'07;}\fi-648\li1728\jclisttab\tx1728\lin1728 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext \'0a\'00.\'01.\'02.\'03.\'04.;}{\levelnumbers\'01\'03\'05\'07\'09;}\fi-792\li2232\jclisttab\tx2232\lin2232 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext \'0c\'00.\'01.\'02.\'03.\'04.\'05.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b;}\fi-936\li2736\jclisttab\tx2736\lin2736 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext \'0e\'00.\'01.\'02.\'03.\'04.\'05.\'06.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d;}\fi-1080\li3240\jclisttab\tx3240\lin3240 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext \'10\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f;}\fi-1224\li3744\jclisttab\tx3744\lin3744 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext \'12\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.\'08.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f\'11;}\fi-1440\li4320\jclisttab\tx4320\lin4320 }{\listname ;}\listid1211266713}{\list\listtemplateid89443496{\listlevel\levelnfc23\levelnfcn23\leveljc0 \leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01\u-3983 ?;}{\levelnumbers;}\f10\fs16\fbias0 \fi-360\li1350\jclisttab\tx1350\lin1350 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1 \levelspace360\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li2070\jclisttab\tx2070\lin2070 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext \'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2790\jclisttab\tx2790\lin2790 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li3510\jclisttab\tx3510\lin3510 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li4230\jclisttab\tx4230\lin4230 }{\listlevel \levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4950\jclisttab\tx4950\lin4950 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0 \levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5670\jclisttab\tx5670\lin5670 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0 {\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li6390\jclisttab\tx6390\lin6390 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace360\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li7110\jclisttab\tx7110\lin7110 }{\listname ;}\listid1319655055}{\list\listtemplateid-2085829406{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;} \fbias0 \fi-360\li960\jclisttab\tx960\lin960 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1680\jclisttab\tx1680\lin1680 }{\listlevel \levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2400\jclisttab\tx2400\lin2400 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0 \levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li3120\jclisttab\tx3120\lin3120 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext \'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3840\jclisttab\tx3840\lin3840 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4560 \jclisttab\tx4560\lin4560 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5280\jclisttab\tx5280\lin5280 }{\listlevel\levelnfc23 \levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li6000\jclisttab\tx6000\lin6000 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1 \levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6720\jclisttab\tx6720\lin6720 }{\listname ;}\listid1362127849}{\list\listtemplateid-1338742674{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0 \levelstartat0\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\fbias0 \fi-360\li960\jclisttab\tx960\lin960 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext \'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1680\jclisttab\tx1680\lin1680 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2400 \jclisttab\tx2400\lin2400 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li3120\jclisttab\tx3120\lin3120 }{\listlevel\levelnfc23 \levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3840\jclisttab\tx3840\lin3840 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1 \levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4560\jclisttab\tx4560\lin4560 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext \'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5280\jclisttab\tx5280\lin5280 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li6000 \jclisttab\tx6000\lin6000 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6720\jclisttab\tx6720\lin6720 }{\listname ;}\listid1392464355}{\list\listtemplateid2085804688{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\fbias0 \fi-360\li960\jclisttab\tx960\lin960 }{\listlevel \levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1680\jclisttab\tx1680\lin1680 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0 \levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2400\jclisttab\tx2400\lin2400 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext \'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li3120\jclisttab\tx3120\lin3120 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3840 \jclisttab\tx3840\lin3840 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4560\jclisttab\tx4560\lin4560 }{\listlevel\levelnfc23 \levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5280\jclisttab\tx5280\lin5280 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0 \levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li6000\jclisttab\tx6000\lin6000 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext \'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6720\jclisttab\tx6720\lin6720 }{\listname ;}\listid1429888245}{\list\listtemplateid67698719{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0 {\leveltext\'02\'00.;}{\levelnumbers\'01;}\fi-360\li360\jclisttab\tx360\lin360 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'04\'00.\'01.;}{\levelnumbers\'01\'03;}\fi-432\li792 \jclisttab\tx792\lin792 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'06\'00.\'01.\'02.;}{\levelnumbers\'01\'03\'05;}\fi-504\li1224\jclisttab\tx1224\lin1224 }{\listlevel\levelnfc0 \levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'08\'00.\'01.\'02.\'03.;}{\levelnumbers\'01\'03\'05\'07;}\fi-648\li1728\jclisttab\tx1728\lin1728 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0 \levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'0a\'00.\'01.\'02.\'03.\'04.;}{\levelnumbers\'01\'03\'05\'07\'09;}\fi-792\li2232\jclisttab\tx2232\lin2232 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1 \levelspace0\levelindent0{\leveltext\'0c\'00.\'01.\'02.\'03.\'04.\'05.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b;}\fi-936\li2736\jclisttab\tx2736\lin2736 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0 \levelindent0{\leveltext\'0e\'00.\'01.\'02.\'03.\'04.\'05.\'06.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d;}\fi-1080\li3240\jclisttab\tx3240\lin3240 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0 {\leveltext\'10\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f;}\fi-1224\li3744\jclisttab\tx3744\lin3744 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0 {\leveltext\'12\'00.\'01.\'02.\'03.\'04.\'05.\'06.\'07.\'08.;}{\levelnumbers\'01\'03\'05\'07\'09\'0b\'0d\'0f\'11;}\fi-1440\li4320\jclisttab\tx4320\lin4320 }{\listname ;}\listid1676181409}{\list\listtemplateid-1850941578{\listlevel\levelnfc255\levelnfcn255 \leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\'97;}{\levelnumbers;}\fbias0 \fi-360\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0 \levelindent0{\leveltext\'01\u-3880 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li1080\jclisttab\tx1080\lin1080 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;} \f10\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li1800\jclisttab\tx1800\lin1800 } {\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3928 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0 \levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3880 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2520\jclisttab\tx2520\lin2520 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0 {\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li3240\jclisttab\tx3240\lin3240 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3928 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listname ;}\listid1781607339}}{\*\listoverridetable{\listoverride\listid-119\listoverridecount0\ls1}{\listoverride\listid-125\listoverridecount0\ls2}{\listoverride\listid-126\listoverridecount0\ls3}{\listoverride\listid-127\listoverridecount0\ls4} {\listoverride\listid-128\listoverridecount0\ls5}{\listoverride\listid-120\listoverridecount0\ls6}{\listoverride\listid-129\listoverridecount0\ls7}{\listoverride\listid-130\listoverridecount0\ls8}{\listoverride\listid-131\listoverridecount0\ls9} {\listoverride\listid-132\listoverridecount0\ls10}{\listoverride\listid1076169485\listoverridecount0\ls11}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0 \levelstartat1\levelold\levelspace0\levelindent360{\leveltext\'01?;}{\levelnumbers;}\fi-360\li360\lin360 }}\ls12}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0 \levelstartat3\levelold\levelspace0\levelindent958{\leveltext\'01?;}{\levelnumbers;}\f39\fs20\fbias0 \fi-958\li1052\lin1052 }}\ls13}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0 \leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0\levelindent360{\leveltext\'01?;}{\levelnumbers;}\f10\fs16\fbias0 \fi-360\li540\lin540 }}\ls14}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat{\listlevel\levelnfc23 \levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat3\levelold\levelspace0\levelindent958{\leveltext\'01?;}{\levelnumbers;}\f39\fs20\fbias0 \fi-958\li1556\lin1556 }}\ls15}{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat {\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0\levelindent360{\leveltext\'01?;}{\levelnumbers;}\f10\fs16\fbias0 \fi-360\li540\lin540 }}\ls16}{\listoverride\listid-2\listoverridecount1{\lfolevel \listoverrideformat{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelold\levelspace0\levelindent360{\leveltext\'01?;}{\levelnumbers;}\f10\fs16\fbias0 \fi-360\li540\lin540 }}\ls17}{\listoverride\listid1392464355 \listoverridecount0\ls18}{\listoverride\listid1362127849\listoverridecount0\ls19}{\listoverride\listid1429888245\listoverridecount0\ls20}{\listoverride\listid750197609\listoverridecount0\ls21}{\listoverride\listid1319655055\listoverridecount0\ls22} {\listoverride\listid1319655055\listoverridecount9{\lfolevel}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel \listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}\ls23}{\listoverride\listid1211266713\listoverridecount0\ls24} {\listoverride\listid322468441\listoverridecount0\ls25}{\listoverride\listid1676181409\listoverridecount0\ls26}{\listoverride\listid1781607339\listoverridecount0\ls27}{\listoverride\listid91172161\listoverridecount0\ls28}{\listoverride\listid798111781 \listoverridecount0\ls29}}{\*\rsidtbl \rsid13973389\rsid16199492}{\*\generator Microsoft Word 11.0.5604;}{\info{\title Chapter 1: The meaning of cost.}{\author Jonathan Lewis}{\operator }{\creatim\yr2005\mo9\dy10\hr11\min29} {\revtim\yr2006\mo6\dy24\hr8\min16}{\printim\yr2005\mo3\dy20\hr11\min46}{\version435}{\edmins384}{\nofpages7}{\nofwords2918}{\nofchars16639}{\*\company }{\nofcharsws19518}{\vern24689}}\paperw11906\paperh16838\margl1152\margr1152 \widowctrl\ftnbj\aenddoc\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\hyphcaps0\formshade\horzdoc\dghspace120\dgvspace120\dghorigin1701\dgvorigin1984\dghshow0\dgvshow3 \jcompress\viewkind1\viewscale100\pgbrdrhead\pgbrdrfoot\nolnhtadjtbl\rsidroot13973389 \fet0{\*\ftnsep \pard\plain \ql \li0\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \chftnsep \par }}{\*\ftnsepc \pard\plain \ql \li0\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \chftnsepc \par }}{\*\aftnsep \pard\plain \ql \li0\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \chftnsep \par }}{\*\aftnsepc \pard\plain \ql \li0\ri0\sa120\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \chftnsepc \par }}\sectd \linex0\headery709\footery709\colsx709\endnhere\sectdefaultcl\sftnbj {\footer \pard\plain \s38\ql \li0\ri0\sa120\widctlpar\tqc\tx4153\tqr\tx8306\faauto\adjustright\rin0\lin0\itap0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 { \cs39\insrsid16199492 Chapter 1 \endash What do you mean by Cost: p. }{\field{\*\fldinst {\cs39\insrsid16199492 PAGE }}{\fldrslt {\cs39\lang1024\langfe1024\noproof\insrsid16199492 2}}}{\cs39\insrsid16199492 of }{\field{\*\fldinst { \cs39\insrsid16199492 NUMPAGES }}{\fldrslt {\cs39\lang1024\langfe1024\noproof\insrsid16199492 7}}}{\insrsid16199492 \par }}{\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}} {\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8 \pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \s51\ql \li0\ri0\sb480\sa480\widctlpar\faauto\adjustright\rin0\lin0\itap0 \b\f1\fs60\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 Analytic Functions \par }\pard\plain \s43\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 Way back in 8.1.6, Oracle Corporation introduced a new feature to standard SQL that allowed you to \'93add value\'94 to the data you had acquired, before sorting and displaying it. Although the feature has now been around for more than five years, and despite the terrific power it gives to the SQL coder, I hardly see it being used in production systems. \par }\pard\plain \s42\ql \fi360\li0\ri0\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 In this article, we examine a real-life programming problem, and an analytic approach that might give the most appropriate solution. In passing, we also take advantage of the 9}{\i\insrsid16199492 i}{\insrsid16199492 feature of }{\b\i\insrsid16199492 subquery factoring}{\insrsid16199492 to keep our code looking clean and tidy as we develop it. The SQL shown in this article has been tested on 9.2.0.6, but modified of the code suitable for 8.1.7.4 and 10.1.0.4 can be found on the author\rquote s websit e. \par }\pard\plain \s1\ql \li0\ri0\sb360\sa120\keepn\widctlpar\faauto\outlinelevel0\adjustright\rin0\lin0\itap0 \b\f1\fs36\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 The Requirement. \par }\pard\plain \s43\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 A short while ago, Simon }{\insrsid13973389 Garland}{\insrsid16199492 of the Wirral Hospital Trust sent me an email because he had seen Tom Kyte talking about }{\b\i\insrsid16199492 analytic functions }{\insrsid16199492 at the UKOUG 2005 conference, and thought that they might solve a programming problem he was facin g. It was an interesting little problem, so I spent a little time playing with it and with his permission I\rquote ve used the results to illustrate the sort of thing you can do with }{\b\i\insrsid16199492 analytic functions}{\insrsid16199492 . \par }\pard\plain \s42\ql \fi360\li0\ri0\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 Simon\rquote s requirement was to produce a report showing how a pa tient had moved from ward to ward in a hospital, starting from data stored in the structure show in fig.1. \par }\pard\plain \s54\ql \li0\ri144\sb160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\cgrid0\insrsid16199492 create table patient_locations( \par }\pard\plain \s61\ql \li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\cgrid0\insrsid16199492 \tab patient_key\tab number\tab \tab not null, \par \tab ward\tab \tab varchar2(12)\tab not null, \par \tab bed\tab \tab varchar2(6), \par \tab start_date\tab date\tab \tab not null, \par \tab end_date\tab date \par ) \par ; \par \par insert into patient_locations values(1,'Nightingale', null, '01-Jan-2005','02-Jan-2005'); \par insert into patient_locations values(1,'Nightingale', 'N1', '02-Jan-2005','03-Jan-2005'); \par insert into patient_locations values(1,'Nightingale', null, '03-Jan-2005','04-Jan-2005'); \par insert into patient_locations values(1,'Cavell', 'C1', '04-Jan-2005','05-Jan-2005'); \par insert into patient_locations values(1,'Nightingale', 'N2', '05-Jan-2005','06-Jan-2005'); \par insert into patient_locations values(1,'Nightingale', 'N3', '06-Jan-2005', null); \par }\pard\plain \s56\ql \li0\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\cgrid0\insrsid16199492 commit; \par }\pard \s56\ql \fi720\li2880\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin2880\itap0 {\insrsid16199492 Fig 1: Sample Data \par }\pard\plain \s43\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 Each row in the table reports the presence of a patient in a bed, showing the first and last dates they were in that bed. However you will note two things from the sample data. First, the patient can move from ward to ward and from bed to bed in a ward; secondly the patient can move back into a ward they have previous}{\insrsid16199492 ly}{\insrsid16199492 been in. (Of course, the }{ \b\i\insrsid16199492 ward }{\insrsid16199492 need not be a column in the table, it can be derived from the bed code, but for simplicity, I have included the ward name in the }{\b\i\insrsid16199492 patient_location}{\insrsid16199492 table). \par }\pard\plain \s42\ql \fi360\li0\ri0\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 Based on this data the report was supposed to list, for each patient, the wards they had been in \endash in the right order, with the first and last dates that t hey had been in a bed in that ward. So for our sample patient the SQL had to produce a result like fig. 2, showing ward \'93Nightingale\'94 twice, but factoring out the various individual beds that the patient had been in whilst in ward \'93Nightingale \'94. Fig 2 shows the desired result and a simple }{\insrsid16199492 output }{\insrsid16199492 listing the available data for that patient in order of first date in a bed \endash with a couple of extra columns to show how we might get started on this task: \par }\pard\plain \s54\ql \li0\ri144\sb160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 PATIENT_KEY WARD WARD_STAR BED_START BED_END WARD_END \par }\pard\plain \s61\ql \li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 ----------- ------------ --------- --------- --------- --------- \par 1 Nightingale 01-JAN-05 02-JAN-05 03-JAN-05 04-JAN-05 \par 1 Cavell 04-JAN-05 04-JAN-05 05-JAN-05 05-JAN-05 \par 1 Nightingale 05-JAN-05 05-JAN-05 \par \par }\pard\plain \s54\ql \li0\ri144\sb160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 PATIENT_KEY WARD BED START_DAT END_DATE LAST_WARD NEXT_WARD \par }\pard\plain \s61\ql \li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 ----------- ------------ --- --------- --------- ------------ ------------ \par 1 Nightingale 01-JAN-05 02-JAN-05 Nightingale \par 1 Nightingale N1 02-JAN-05 03-JAN-05 Nightingale Nightingale \par 1 Nightingale 03-JAN-05 04-JAN-05 Nightingale Cavell \par 1 Cavell C1 04-JAN-05 05-JAN-05 Nightingale Nightingale \par 1 Nightingale N2 05-JAN-05 06-JAN-05 Cavell Nightingale \par }\pard\plain \s56\ql \li0\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 1 Nightingale N3 06-JAN-05 Nightingale \par }{\cgrid0\insrsid16199492 \par }\pard \s56\ql \li2160\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin2160\itap0 {\insrsid16199492 Fig 2: Desired output \endash and first steps \par }\pard\plain \s43\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 The extra columns are the }{\b\i\insrsid16199492 last_ward}{\insrsid16199492 \endash the one the patient was previosuly in - and the }{\b\i\insrsid16199492 next_ward}{\insrsid16199492 \endash the one the patient is going to be in next. For each row, I have managed to copy the }{\b\i\insrsid16199492 ward }{\insrsid16199492 column from either the previous row (last ward) or the next row (previous ward) using the }{\b\i\insrsid16199492 lag() over()}{\insrsid16199492 and }{\b\i\insrsid16199492 lead() over() }{\insrsid16199492 analytic functions respectively (see fig. 3). \par }\pard\plain \s42\ql \fi360\li0\ri0\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 The }{\b\i\insrsid16199492 lag( ) over()}{\insrsid16199492 function takes a column name and the number of rows you want to delay (lag) before reporting the value that belongs in that row, the }{\b\i\insrsid16199492 lead()over()}{\insrsid16199492 function takes a column name and the number of the number of rows by which a value should anticipate (lead) its expected position. \par Both functions display the analytic }{\b\i\insrsid16199492 over()}{\insrsid16199492 clause, which takes the originally selected data set (ignoring any trailing }{\b\i\insrsid16199492 order by }{\insrsid16199492 clause) and breaks it into sections (}{ \b\i\insrsid16199492 partition by}{\insrsid16199492 ) based on some available column(s), then sorts the data within each section (}{\b\i\insrsid16199492 order by}{\insrsid16199492 ). So, for example, our use of }{\b\i\insrsid16199492 lag() }{ \insrsid16199492 breaks the data down by }{\b\i\insrsid16199492 patient_key}{\insrsid16199492 , sorts each patient by }{\b\i\insrsid16199492 start_date}{\insrsid16199492 , and copies down into the current row the ward name that the patient was in just one row previously. \par }\pard\plain \s54\ql \li0\ri144\sb160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 select \par }\pard\plain \s61\ql \li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 \tab ... \par \tab lag(ward,1) over (partition by patient_key order by start_date)\tab \tab last_ward, \par \tab lead(ward,1) over (partition by patient_key order by start_date) \tab next_ward, \par \tab -- \par \tab -- the two extra columns defined below get us closer to the final result \par \tab -- \par \tab decode ( \par \tab \tab lag(ward,1) over (partition by patient_key order by start_date), \par \tab \tab \tab ward,\tab to_date(null), \par \tab \tab \tab \tab start_date \par \tab )\tab \tab \tab \tab \tab \tab \tab \tab \tab \tab start_ward, \par \tab decode ( \par \tab \tab lead(ward,1) over (partition by patient_key order by start_date), \par }\pard \s61\ql \fi720\li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 {\insrsid16199492 \tab \tab ward,\tab to_date(null), \par }\pard \s61\ql \li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 {\insrsid16199492 \tab \tab \tab \tab end_date \par \tab )\tab \tab \tab \tab \tab \tab \tab \tab \tab \tab end_ward \par from \par \tab patient_locations \par where\tab patient_key = 1 \par order by \par \tab patient_key, \par \tab start_date \par }\pard\plain \s56\ql \li0\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 ;}{\cgrid0\insrsid16199492 \par }\pard \s56\ql \li2160\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin2160\itap0 {\insrsid16199492 Fig 3: Lead() and Lag() \endash then used with decode() \par }\pard\plain \s43\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 You will notice in fig. 3 that I have actually taken the code one step further. Given that I know which ward the patient was in on the last report date, and where the patient will be on the next report date, I have introduce a pair of }{ \b\i\insrsid16199492 decode()}{\insrsid16199492 statements that say: \'93if the last ward is }{\b\i\insrsid16199492 not }{\insrsid16199492 the same as this ward, then this is the starting date in a new ward, and if the next w ard is not the same as this ward then this is the ending date in the current ward\'94. Dropping the }{\b\i\insrsid16199492 last_ward}{\insrsid16199492 and }{\b\i\insrsid16199492 next_ward }{\insrsid16199492 columns from the output to make a little extra space, this make our output look like fig. 4: \par \par }\pard\plain \s54\ql \li0\ri144\sb160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 PATIENT_KEY WARD BED START_DAT END_DATE START_WAR END_WARD \par }\pard\plain \s61\ql \li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 ----------- ------------ --- --------- --------- --------- --------- \par 1 Nightingale 01-JAN-05 02-JAN-05 01-JAN-05 \par 1 Nightingale N1 02-JAN-05 03-JAN-05 \par 1 Nightingale 03-JAN-05 04-JAN-05 04-JAN-05 \par 1 Cavell C1 04-JAN-05 05-JAN-05 04-JAN-05 05-JAN-05 \par 1 Nightingale N2 05-JAN-05 06-JAN-05 05-JAN-05 \par }\pard\plain \s56\ql \li0\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 1 Nightingale N3 06-JAN-05}{\cgrid0\insrsid16199492 \par }\pard \s56\ql \li2160\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin2160\itap0 {\insrsid16199492 Fig 4: Dates of entering an leaving wards \par }\pard\plain \s43\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 We are beginning to close in on the report we want. If we look at the 1}{ \super\insrsid16199492 st}{\insrsid16199492 Jan 2005 date which is the starting date in \'93Nightingale\'94 ward, we would like that copied down to the next two rows, and similarly we would like the ending date for \'93Nightingale\'94, the 4}{ \super\insrsid16199492 th}{\insrsid16199492 Jan 2005, copied upwards, so that we could do something with }{\i\insrsid16199492 \lquote all the Nightingale data for 1}{\i\super\insrsid16199492 st}{\i\insrsid16199492 to 4}{\i\super\insrsid16199492 th}{ \i\insrsid16199492 Jan\rquote }{\insrsid16199492 , because our final target is to see when the patient first got a bed, and last left a bed during that stay in \'93Nightingale\'94. Then we want the same again for \'93Cavell\'94 , and then the second visit to \'93Nightingale\'94. \par }\pard\plain \s42\ql \fi360\li0\ri0\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 In 10}{\i\insrsid16199492 g}{\insrsid16199492 , the analytic functions }{ \b\i\insrsid16199492 last_value()over()}{\insrsid16199492 and }{\b\i\insrsid16199492 first_value()over()}{\insrsid16199492 can help us because they have been enhanced with a special }{\b\i\insrsid16199492 ignore nulls }{\insrsid16199492 clause. However, in 9}{\i\insrsid16199492 i}{\insrsid16199492 we have to resort to a little trickery using the }{\b\i\insrsid16199492 min()}{\insrsid16199492 and }{\b\i\insrsid16199492 max()}{\insrsid16199492 functions in their analytic form, as shown in fig 5: \par }\pard\plain \s54\ql \li0\ri144\sb160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 with ward_dates as ( \par }\pard\plain \s61\ql \li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 \tab select \par \tab \tab ... \par \tab \tab decode ( \par \tab \tab \tab lag(ward,1) over (partition by patient_key order by start_date), \par }\pard \s61\ql \fi720\li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 {\insrsid16199492 \tab \tab \tab ward,\tab to_date(null), \par }\pard \s61\ql \li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 {\insrsid16199492 \tab \tab \tab \tab \tab start_date \par \tab \tab )\tab \tab \tab \tab \tab \tab \tab \tab start_ward, \par \tab \tab decode ( \par \tab \tab \tab lead(ward,1) over (partition by patient_key order by start_date), \par \tab \tab \tab \tab ward,\tab to_date(null), \par \tab \tab \tab \tab \tab end_date \par \tab \tab )\tab \tab \tab \tab \tab \tab \tab \tab end_ward \par \tab from \par \tab \tab patient_locations \par ) \par select \par \tab ... \par \tab start_ward, \par \tab end_ward, \par \tab max(start_ward) over(partition by patient_key order by start_date) \tab ward_start, \par \tab min(end_ward) over(partition by patient_key order by start_date desc)\tab ward_end \par from \par \tab ward_dates \par order by \par \tab patient_key, \par \tab ward_start \par ; \par \par PATIENT_KEY WARD BED START_DAT END_DATE START_WAR END_WARD WARD_STAR WARD_END \par ----------- ------------ --- --------- --------- --------- --------- --------- --------- \par 1 Nightingale 01-JAN-05 02-JAN-05 01-JAN-05 01-JAN-05 04-JAN-05 \par 1 Nightingale N1 02-JAN-05 03-JAN-05 01-JAN-05 04-JAN-05 \par 1 Nightingale 03-JAN-05 04-JAN-05 04-JAN-05 01-JAN-05 04-JAN-05 \par 1 Cavell C1 04-JAN-05 05-JAN-05 04-JAN-05 05-JAN-05 04-JAN-05 05-JAN-05 \par 1 Nightingale N2 05-JAN-05 06-JAN-05 05-JAN-05 05-JAN-05 \par }\pard\plain \s56\ql \li0\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 1 Nightingale N3 06-JAN-05 05-JAN-05}{\cgrid0\insrsid16199492 \par }\pard \s56\ql \li2160\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin2160\itap0 {\insrsid16199492 Fig 5: Copying data downwards and upwards \par }\pard\plain \s43\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 As the SQL becomes more complex, I start writing it as a series of chunks which you could view as sub-routines \endash or possibly macros. \par }\pard\plain \s42\ql \fi360\li0\ri0\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 Taking the SQL from the previous step, I have isolated it at the start of the query and given it a name}{\i\insrsid16199492 \'93with subquery_alias as(\{your text goes here\})\'94}{\insrsid16199492 and then used the alias in the main query }{ \i\insrsid16199492 \'93select from subquery_alias\'94}{\insrsid16199492 . It is a very useful as a way of keeping your SQL tidy when using }{\b\i\insrsid16199492 analytic functions}{\insrsid16199492 , but can be used in any SQL that requires you to construct complex select statements. }{\b\i\insrsid16199492 Subquery factoring }{\insrsid16199492 is a 9i feature, so the versions of this code for 8i use }{\b\i\insrsid16199492 in-line views}{ \insrsid16199492 . \par As we shall see later on, we can do the same thing many times in the same query, so long as the subqueries we define in the earlier stages of the query are eventually used somewhere in the later stages of the query. \par As far as the optimizer is concerned, when it sees the }{\b\i\insrsid16199492 subquery_alias}{\insrsid16199492 in the main select statement, it can decide whether to copy down the original text (treating the subquery as a macro) and then optimise a complex statement, or to create an internal }{\b\i\insrsid16199492 temporary table }{\insrsid16199492 from the original subquery (treating it like a subroutine) and using the temporary result set. \par In this example my main query generates a }{\b\i\insrsid16199492 ward_start}{\insrsid16199492 date by taking the previous output, partitioning it by }{\b\i\insrsid16199492 patient_key}{\insrsid16199492 (again), sorting by }{\b\i\insrsid16199492 start_date }{\insrsid16199492 (again) in ascending order, and then taking the maximum value relevant to the row and reporting it. But there\rquote s an important little detail here, and one that is invisible because it is implicit \endash what do we mean by }{\i\insrsid16199492 \lquote maximum value relevant to the row\rquote }{\insrsid16199492 ? \par We have seen the }{\b\i\insrsid16199492 partition }{\insrsid16199492 option and the }{\b\i\insrsid16199492 order by }{\insrsid16199492 option appearing in the }{\b\i\insrsid16199492 over()}{\insrsid16199492 clause. There is one more option to consider \endash the }{\b\i\insrsid16199492 windowing}{\insrsid16199492 option. When you use a function like the }{\b\i\insrsid16199492 max()}{\insrsid16199492 function, you have to ask }{\i\insrsid16199492 \'93maximum of what ?\'94}{\insrsid16199492 . A nd this is where }{\b\i\insrsid16199492 windowing}{\insrsid16199492 appear. You can supply }{\b\i\insrsid16199492 windowing clauses }{\insrsid16199492 like: \lquote maximum of the last four, current, and next three rows\rquote ; \lquote maximum of rows where the start date is one week either side of the date in the current row\rquote or (the default, which we use here) \lquote maximum from the start of the }{\b\i\insrsid16199492 partition }{\insrsid16199492 to the current row\rquote . \par Since we are sorting by }{\b\i\insrsid16199492 start_date}{\insrsid16199492 within our partition, our }{\b\i\insrsid16199492 max()}{\insrsid16199492 picks up the 1}{\super\insrsid16199492 st}{\insrsid16199492 Jan for the first three rows, then jumps to 4}{\super\insrsid16199492 th}{\insrsid16199492 Jan for the fourth row, and 5}{\super\insrsid16199492 th}{\insrsid16199492 Jan for the last row. In 10g, we could use the }{\b\i\insrsid16199492 last_value(start_date) over ()}{\insrsid16199492 , rather than }{\b\i\insrsid16199492 max()}{\insrsid16199492 , which in 9i simply returns the last value used in the window, but in 10g has an option to }{\b\i\insrsid16199492 ignore nulls}{ \insrsid16199492 . The fact that we can get the same result by using the }{\b\i\insrsid16199492 max()}{\insrsid16199492 function in 9i is a fortunate side effect of the }{\b\i\insrsid16199492 order by }{\insrsid16199492 clause we used in the }{ \b\i\insrsid16199492 partition }{\insrsid16199492 combined with the fact that }{\b\i\insrsid16199492 max()}{\insrsid16199492 automatically ignores nulls. \par To clarify what Oracle is doing with the }{\b\i\insrsid16199492 max() over()}{\insrsid16199492 to extend the }{\b\i\insrsid16199492 start_ward}{\insrsid16199492 column to become the }{\b\i\insrsid16199492 ward_ start}{\insrsid16199492 column I have re-structured part of the output in Table 1: \par \par }\trowd \irow0\irowband0\ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1277\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx851\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1469\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx2320\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1232\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx3552\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1232\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx4784\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1232\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx6016\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1232\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx7248\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1232\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx8480\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1232\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx9712\pard \s42\ql \li0\ri0\sl-260\slmult0\widctlpar\intbl\faauto\adjustright\rin0\lin0 {\b\insrsid16199492 Start_date \par Ascending\cell Start_ward\cell Max() of 1}{\b\super\insrsid16199492 st}{\b\insrsid16199492 one row\cell Max() of 1}{\b\super\insrsid16199492 st}{\b\insrsid16199492 two rows\cell Max() of 1}{\b\super\insrsid16199492 st}{\b\insrsid16199492 three rows \cell Max() of 1}{\b\super\insrsid16199492 st}{\b\insrsid16199492 four rows\cell Max() of 1}{\b\super\insrsid16199492 st}{\b\insrsid16199492 five rows\cell Max() of 1}{\b\super\insrsid16199492 st}{\b\insrsid16199492 six rows\cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\b\insrsid16199492 \trowd \irow0\irowband0\ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl \brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1277\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx851\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1469\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx2320\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1232\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx3552\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1232\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx4784\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1232\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx6016\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1232\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx7248\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1232\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx8480\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1232\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx9712\row }\trowd \irow1\irowband1 \ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1277\clshdrawnil \cellx851\clvertalt \clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1469\clshdrawnil \cellx2320\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx3552\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx4784\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx6016 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx7248\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx8480\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr \brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx9712\pard\plain \s42\ql \li0\ri0\sl-260\slmult0\widctlpar\intbl\faauto\adjustright\rin0\lin0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 01-jan-05 \cell 01-jan-05\cell 01-jan-05\cell \cell \cell \cell \cell \cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \trowd \irow1\irowband1 \ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1277\clshdrawnil \cellx851\clvertalt \clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1469\clshdrawnil \cellx2320\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx3552\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx4784\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx6016 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx7248\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx8480\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr \brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx9712\row }\pard\plain \s42\ql \li0\ri0\sl-260\slmult0\widctlpar\intbl\faauto\adjustright\rin0\lin0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 02-jan-05\cell \cell \cell 01-jan-05\cell \cell \cell \cell \cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \trowd \irow2\irowband2 \ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1277\clshdrawnil \cellx851\clvertalt \clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1469\clshdrawnil \cellx2320\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx3552\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx4784\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx6016 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx7248\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx8480\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr \brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx9712\row }\pard\plain \s42\ql \li0\ri0\sl-260\slmult0\widctlpar\intbl\faauto\adjustright\rin0\lin0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 03-jan-05\cell \cell \cell \cell 01-jan-05\cell \cell \cell \cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \trowd \irow3\irowband3 \ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1277\clshdrawnil \cellx851\clvertalt \clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1469\clshdrawnil \cellx2320\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx3552\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx4784\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx6016 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx7248\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx8480\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr \brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx9712\row }\pard\plain \s42\ql \li0\ri0\sl-260\slmult0\widctlpar\intbl\faauto\adjustright\rin0\lin0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 04-jan-05\cell 04-jan-05\cell \cell \cell \cell 04-jan-05\cell \cell \cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \trowd \irow4\irowband4\ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1277\clshdrawnil \cellx851\clvertalt \clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1469\clshdrawnil \cellx2320\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx3552\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx4784\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx6016 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx7248\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx8480\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr \brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx9712\row }\pard\plain \s42\ql \li0\ri0\sl-260\slmult0\widctlpar\intbl\faauto\adjustright\rin0\lin0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 05-jan-05\cell 05-jan-05\cell \cell \cell \cell \cell 05-jan-05\cell \cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \trowd \irow5\irowband5\ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1277\clshdrawnil \cellx851\clvertalt \clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1469\clshdrawnil \cellx2320\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx3552\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx4784\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx6016 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx7248\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx8480\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr \brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx9712\row }\pard\plain \s42\ql \li0\ri0\sl-260\slmult0\widctlpar\intbl\faauto\adjustright\rin0\lin0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 06-jan-06\cell \cell \cell \cell \cell \cell \cell 05-jan-05\cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \trowd \irow6\irowband6\lastrow \ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1277\clshdrawnil \cellx851\clvertalt \clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1469\clshdrawnil \cellx2320\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx3552\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx4784\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx6016 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx7248\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx8480\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr \brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1232\clshdrawnil \cellx9712\row }\pard\plain \s56\ql \li0\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 { \cgrid0\insrsid16199492 \par }\pard \s56\ql \li2160\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin2160\itap0 {\insrsid16199492 Table 1: The effect of \'93windowing\'94 on start_ward \par }\pard\plain \s43\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 We can repeat the exercise for the }{\b\i\insrsid16199492 end_ward }{ \insrsid16199492 date (Table 2) \endash noting that the }{\b\i\insrsid16199492 order by }{\insrsid16199492 clause was written to sort the }{\b\i\insrsid16199492 start_date }{\insrsid16199492 in descending order: \par }\pard\plain \s42\ql \fi360\li0\ri0\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \par }\trowd \irow0\irowband0\ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1419\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx993\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1300\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx2293\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1236\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx3529\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1236\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx4765\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1236\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx6001\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1236\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx7237\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1236\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx8473\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1236\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx9709\pard \s42\ql \li0\ri0\sl-260\slmult0\widctlpar\intbl\faauto\adjustright\rin0\lin0 {\b\insrsid16199492 Start_date \par Descending\cell End_ward\cell Min() of 1}{\b\super\insrsid16199492 st}{\b\insrsid16199492 one row\cell Min() of 1}{\b\super\insrsid16199492 st}{\b\insrsid16199492 two rows\cell Min() of 1}{\b\super\insrsid16199492 st}{\b\insrsid16199492 three rows \cell Min() of 1}{\b\super\insrsid16199492 st}{\b\insrsid16199492 four rows\cell Min() of 1}{\b\super\insrsid16199492 st}{\b\insrsid16199492 five rows\cell Min() of 1}{\b\super\insrsid16199492 st}{\b\insrsid16199492 six rows\cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\b\insrsid16199492 \trowd \irow0\irowband0\ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl \brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1419\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx993\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1300\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx2293\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1236\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx3529\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1236\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx4765\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1236\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx6001\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1236\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx7237\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1236\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx8473\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \clcfpat1\clcbpat8\clshdng10000\cltxlrtb\clftsWidth3\clwWidth1236\clcbpatraw8\clcfpatraw1\clshdngraw10000 \cellx9709\row }\trowd \irow1\irowband1 \ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1419\clshdrawnil \cellx993\clvertalt \clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1300\clshdrawnil \cellx2293\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx3529\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx4765\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx6001 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx7237\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx8473\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr \brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx9709\pard\plain \s42\ql \li0\ri0\sl-260\slmult0\widctlpar\intbl\faauto\adjustright\rin0\lin0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 06-jan-06 \cell \cell \{blank\}\cell \cell \cell \cell \cell \cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \trowd \irow1\irowband1 \ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1419\clshdrawnil \cellx993\clvertalt \clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1300\clshdrawnil \cellx2293\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx3529\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx4765\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx6001 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx7237\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx8473\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr \brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx9709\row }\pard\plain \s42\ql \li0\ri0\sl-260\slmult0\widctlpar\intbl\faauto\adjustright\rin0\lin0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 05-jan-05\cell \cell \cell \{blank\}\cell \cell \cell \cell \cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \trowd \irow2\irowband2 \ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1419\clshdrawnil \cellx993\clvertalt \clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1300\clshdrawnil \cellx2293\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx3529\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx4765\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx6001 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx7237\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx8473\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr \brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx9709\row }\pard\plain \s42\ql \li0\ri0\sl-260\slmult0\widctlpar\intbl\faauto\adjustright\rin0\lin0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 04-jan-05\cell 05-jan-05\cell \cell \cell 05-jan-05\cell \cell \cell \cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \trowd \irow3\irowband3\ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1419\clshdrawnil \cellx993\clvertalt \clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1300\clshdrawnil \cellx2293\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx3529\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx4765\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx6001 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx7237\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx8473\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr \brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx9709\row }\pard\plain \s42\ql \li0\ri0\sl-260\slmult0\widctlpar\intbl\faauto\adjustright\rin0\lin0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 03-jan-05\cell 04-jan-05\cell \cell \cell \cell 04-jan-05\cell \cell \cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \trowd \irow4\irowband4\ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1419\clshdrawnil \cellx993\clvertalt \clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1300\clshdrawnil \cellx2293\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx3529\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx4765\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx6001 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx7237\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx8473\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr \brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx9709\row }\pard\plain \s42\ql \li0\ri0\sl-260\slmult0\widctlpar\intbl\faauto\adjustright\rin0\lin0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 02-jan-05\cell \cell \cell \cell \cell \cell 04-jan-05\cell \cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \trowd \irow5\irowband5 \ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1419\clshdrawnil \cellx993\clvertalt \clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1300\clshdrawnil \cellx2293\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx3529\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx4765\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx6001 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx7237\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx8473\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr \brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx9709\row }\pard\plain \s42\ql \li0\ri0\sl-260\slmult0\widctlpar\intbl\faauto\adjustright\rin0\lin0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 01-jan-05\cell \cell \cell \cell \cell \cell \cell 04-jan-05\cell }\pard\plain \ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \fs24\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \trowd \irow6\irowband6\lastrow \ts11\trgaph108\trleft-426\trbrdrt\brdrs\brdrw15\brdrcf1 \trbrdrl\brdrs\brdrw15\brdrcf1 \trbrdrb\brdrs\brdrw15\brdrcf1 \trbrdrr\brdrs\brdrw15\brdrcf1 \trbrdrh\brdrs\brdrw15\brdrcf1 \trbrdrv\brdrs\brdrw15\brdrcf1 \trftsWidth1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1419\clshdrawnil \cellx993\clvertalt \clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1300\clshdrawnil \cellx2293\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx3529\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx4765\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx6001 \clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx7237\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl \brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr\brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx8473\clvertalt\clbrdrt\brdrs\brdrw15\brdrcf1 \clbrdrl\brdrs\brdrw15\brdrcf1 \clbrdrb\brdrs\brdrw15\brdrcf1 \clbrdrr \brdrs\brdrw15\brdrcf1 \cltxlrtb\clftsWidth3\clwWidth1236\clshdrawnil \cellx9709\row }\pard\plain \s56\ql \li2160\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin2160\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 \par Table 2: The effect of \'93windowing\'94 with descending sort \par }\pard\plain \s43\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 At this point we can make an important point about the overheads of using }{ \b\i\insrsid16199492 analytic functions }{\insrsid16199492 \endash how much CPU are we going to spend on sorting, and what resources are we trying to save by using that CPU. Essentially, the savings are (a) developer time \endash the alternative to the analytic approach is to write some procedural code that starts with our simplest query and walks through the result in order, deciding what to output when; and (b) buffer gets and latch activity \endash by taking the anal ytic approach we can often avoid things like self-joins or single row processing. The overheads come from the extra memory demands and CPU that show up in the sorting required for partitioning and ordering within partitions. In this example, so far, Oracl e will have sorted the data four times: just once for the two identical }{\b\i\insrsid16199492 over() }{\insrsid16199492 clauses in the first subquery, twice more for the two different }{\b\i\insrsid16199492 over() }{\insrsid16199492 clauses with their opposing ascending and descending }{\b\i\insrsid16199492 order by }{\insrsid16199492 clauses in the second query, and once more for the final }{\b\i\insrsid16199492 order by}{\insrsid16199492 clause. Be careful with }{ \b\i\insrsid16199492 analytic functions}{\insrsid16199492 \endash Oracle tries to be clever about minimising the amount of sorting, but you still need to think about how often you will be sort the data, and how much will be sorted, when you start using }{\b\i\insrsid16199492 analytic functions}{\insrsid16199492 . \par }\pard\plain \s42\ql \fi360\li0\ri0\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 Now that we have the }{\b\i\insrsid16199492 ward_start}{\insrsid16199492 and }{ \b\i\insrsid16199492 ward_end}{\insrsid16199492 dates for each row, the final result is almost at hand. For each combination of }{\b\i\insrsid16199492 patient_key }{\insrsid16199492 and }{\b\i\insrsid16199492 ward_start/end}{\insrsid16199492 , we want the earliest }{\b\i\insrsid16199492 start_date}{\insrsid16199492 and latest }{\b\i\insrsid16199492 end_date}{\insrsid16199492 , which is just a simple min/max aggregate query \endash so let\rquote s make our current main query another layer in the }{\b\i\insrsid16199492 subquery factoring}{\insrsid16199492 and finish off (fig. 6): \par }\pard\plain \s54\ql \li0\ri144\sb160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 with ward_dates as ( \par }\pard\plain \s61\ql \li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 \tab select \par \tab \tab ... \par \tab \tab decode ( \par \tab \tab \tab lag(ward,1) over (partition by patient_key order by start_date), \par \tab \tab \tab ward, to_date(null), \par \tab \tab \tab start_date \par \tab \tab )\tab start_ward, \par \tab \tab decode ( \par \tab \tab \tab lead(ward,1) over (partition by patient_key order by start_date), \par \tab \tab \tab ward, to_date(null), \par \tab \tab \tab end_date \par \tab \tab )\tab end_ward \par \tab from \par \tab \tab patient_locations \par ), \par ward_ranges as ( \par \tab select \par \tab \tab ... \par \tab \tab max(start_ward) over( \par \tab \tab \tab partition by patient_key order by start_date \par \tab \tab ) ward_start, \par \tab \tab min(end_ward) over( \par \tab \tab \tab partition by patient_key order by start_date desc \par \tab \tab ) ward_end \par \tab from \par \tab \tab ward_dates \par ) \par select \par \tab patient_key, ward, ward_start, \par \tab min(case when bed is not null then start_date end)\tab \tab \tab \tab bed_start, \par \tab max(case when bed is not null then nvl(end_date,'01-Dec-9999') end)\tab bed_end, \par \tab ward_end \par from \par \tab ward_ranges \par group by \par \tab patient_key, ward, ward_start, ward_end \par order by \par \tab ward_start \par }\pard\plain \s56\ql \li0\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 ; \par }\pard \s56\ql \li2160\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin2160\itap0 {\insrsid16199492 Figure 6: Putting the bits together \par }\pard\plain \s43\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 Notice how the second factored subquery (}{\b\i\insrsid16199492 ward_ranges}{ \insrsid16199492 ) is separated from the first by nothing more than a comma, and we do not introduce it with another }{\b\i\insrsid16199492 \'93with\'94}{\insrsid16199492 . Notice also that we can use the first factored subquery in the second factored subquery. The feature is very powerful \endash though it still has to catch up with DB2, where a factored subquery can reference itself! \par }\pard\plain \s42\ql \fi360\li0\ri0\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 I\rquote ve also made use of the }{\b\i\insrsid16199492 case}{\insrsid16199492 statement rather than the }{\b\i\insrsid16199492 decode()}{\insrsid16199492 function to deal with the oddities of being in a ward but not being in a bed \endash note that the default result for }{\b\i\insrsid16199492 when others}{\b\insrsid16199492 }{ \insrsid16199492 is }{\b\i\insrsid16199492 null }{\insrsid16199492 in a }{\b\i\insrsid16199492 case }{\insrsid16199492 statement. \par This final query leaves us with the output shown in fig. 7: \par }\pard\plain \s54\ql \li0\ri144\sb160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 PATIENT_KEY WARD WARD_STAR BED_START BED_END WARD_END \par }\pard\plain \s61\ql \li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 ----------- ------------ --------- --------- --------- --------- \par 1 Nightingale 01-JAN-05 02-JAN-05 03-JAN-05 04-JAN-05 \par 1 Cavell 04-JAN-05 04-JAN-05 05-JAN-05 05-JAN-05 \par }\pard\plain \s56\ql \li0\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 1 Nightingale 05-JAN-05 05-JAN-05 01-DEC-99 \par }\pard \s56\ql \li2160\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin2160\itap0 {\insrsid16199492 Figure 7: The end result (nearly) \par }\pard\plain \s43\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 The output as I\rquote ve left it in fig. 7 isn\rquote t quite perfect \endash that }{\b\i\insrsid16199492 01-Dec-99 }{\insrsid16199492 in the last row really ought to be a null, but it\rquote s left as an exercise to the reader to deal with this little detail. If you download the versions of code I have put on the web-site, you will find that I\rquote ve used yet another layer of }{\b\i\insrsid16199492 subquery factoring}{\insrsid16199492 , rather than making the declaration of }{\b\i\insrsid16199492 bed_end}{\insrsid16199492 look really messy. \par }\pard\plain \s42\ql \fi360\li0\ri0\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 Inevitably there are a few words of caution. You will find in the script on the website that I have created a view for this example, and queries like the one in fig/ 8 will work efficiently and correctly: \par }\pard\plain \s54\ql \li0\ri144\sb160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 select \tab * \par }\pard\plain \s61\ql \li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 from \tab analytic_wards \par where \tab patient_key = 1 \par order by \par }\pard \s61\ql \fi720\li0\ri144\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 {\insrsid16199492 ward_start \par }\pard\plain \s56\ql \li0\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin0\itap0 \f37\fs20\lang1024\langfe1024\cgrid\noproof\langnp1033\langfenp1033 {\insrsid16199492 ; \par }\pard \s56\ql \li1440\ri144\sa160\sl-240\slmult0\widctlpar\faauto\adjustright\rin144\lin1440\itap0 {\insrsid16199492 Figure 8: A successful use of views with analytic functions \par }\pard\plain \s43\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 Don\rquote t expect to be able to do this every time you use analytic functions. If you use }{\b\i\insrsid16199492 analytic functions}{\insrsid16199492 inside views you may find that a query against the view instantiates the entire result set before applying your predicates, rather than pushing your predicates inside the view and working with a minimal data set. It is just the nature of some of the }{ \b\i\insrsid16199492 analytic functions}{\insrsid16199492 that this has to be done to ensure that you get the right answer. \par }\pard\plain \s42\ql \fi360\li0\ri0\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 Finally, be careful when using }{\b\i\insrsid16199492 analytic functions }{ \insrsid16199492 with Rule Based Optimisation (RBO) \endash you may find the odd case where the RBO assumes that part of its execution plan has pushed the data into the order required by an }{\b\i\insrsid16199492 order by }{\insrsid16199492 clause, and then fails to notice that the presence of an }{\b\i\insrsid16199492 analytic function}{\insrsid16199492 has re-sorted the data, so the final results comes out in the wrong order. \par }\pard\plain \s1\ql \li0\ri0\sb360\sa120\keepn\widctlpar\faauto\outlinelevel0\adjustright\rin0\lin0\itap0 \b\f1\fs36\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 Conclusion. \par }\pard\plain \s43\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 Whenever you can write an SQL statement that contains all the data you want, but leaves you keen to add a little value \endash whether it\rquote s running totals, cross-tabs, top and tail, or any other cosmetic and information enhancing options \endash think carefully about the long list of }{\b\i\insrsid16199492 analytic functions}{\insrsid16199492 that are available. You may not need to write any procedural code to turn your simple result set into a much more sophisticated output. \par }\pard\plain \s42\ql \fi360\li0\ri0\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 For further details of what you can do with }{\b\i\insrsid16199492 analytic functions }{\insrsid16199492 , the best source of information is in the Data Warehousing Guide \endash but don\rquote t let that fool you into thinking that you have to be running a data warehouse to use them. \par }\pard\plain \s129\ql \li0\ri0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \f1\fs24\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\insrsid16199492 \par }\pard\plain \s130\ql \li0\ri0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \i\f1\fs24\lang2057\langfe1033\cgrid\langnp2057\langfenp1033 {\insrsid16199492 Jonathan Lewis is a freelance consultant whose experience with Oracle goes back to version 5.1a. He specialises in physical database design and the strategic use of the Oracle database engine. He is the author of \lquote Cost Based Oracle \endash Fundamentals\rquote published by Apress, and 'Practical Oracle 8i \endash Designing Efficient Databases' published by Addison-Wesley, and is one of the best-known speakers on the UK Oracle circuit. Further details of his published papers, presentations, tutorials and seminars can be found at http://www.jlcomp.demon.co.uk, which also hosts The Co-operative Oracle Users' FAQ for the Oracl e-related Usenet newsgroups. \par }\pard\plain \s43\ql \li0\ri0\sb120\sl-260\slmult0\widctlpar\faauto\adjustright\rin0\lin0\itap0 \fs23\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\insrsid16199492 \par }}