(* Content-type: application/mathematica *) (*** Wolfram Notebook File ***) (* http://www.wolfram.com/nb *) (* CreatedBy='Mathematica 7.0' *) (*CacheID: 234*) (* Internal cache information: NotebookFileLineBreakTest NotebookFileLineBreakTest NotebookDataPosition[ 145, 7] NotebookDataLength[ 117775, 2565] NotebookOptionsPosition[ 57332, 1264] NotebookOutlinePosition[ 113922, 2448] CellTagsIndexPosition[ 113842, 2443] WindowFrame->Normal*) (* Beginning of Notebook Content *) Notebook[{ Cell[BoxData[ GraphicsBox[ TagBox[RasterBox[CompressedData[" 1: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 PHny/tPnFgo/uTjs6jpt7Z9z65jxS9/qOfny72rg7yrvz/WxZ35+Z/va3Tvf +eEP8i69fnvz3LkRhwofnOVQ4c2xaX91cuHqlXiE5188Wzn+uA7oUOFUp/ps uMbOq+u7FeNq/Yr089Nnzoz6ZiZ8NaXwtu2bN26/v5v/OYW/1XCc+jl89guv znLh4ePjLhAAAAAAgPl68olPzKU0OHt44sS8DtUSfj7x4OENnR9vvW34tGji B8sTGHzv/zjDan28/v4hd+CDtbW+kVk6yMAbPpWN/ct5XD23x/s3cGOaw14/ efLRqC99d22t9baBY77RH8xdev32O3sffv9//X1f9x4+OL+zPeRQF65eqR/q Oz/8wZCxS3r/6BFh+EXxCJ2/rnKGQzqgQ4VTHXGEid9OuhXjat3A9PNrd+8c xFfTuiH1k3/v448qk8rw0iwXPst4GgAAAACAOToW88GNpvmgmNpUur+2Vr/M g5sPTjVOGj4f3OiaW1WqXOBBzAe31tcnTvFSj3pmuOUlT/W3FO5PPnncLC7z 0YDR7bhPPXWEc+fuPXyQz0Te2fswLdF67+OP8pduv79bWa71/ItnW4cKH0+H ak1e6odqnh66jVjA2KzSfHDiLT2g+WDfvZ3xq0mu3b3TOpP051T+pXVOSM0H AQAAAACWw4yzvHLGNPf54EbT7E1/zHAaG/2XeaDzwcef+MTAJXID54Pj7sBu MSSN5j4fvD5p2WBn9Snq1vr6iGPuPf2llxPViXuclt/IVIsHN8+dSxPA8I9r d++U+z2G99x6936amLyz92HntC4/VCh8pHzb+Z3tfFB17+GDyogwH9OEdw6/ qGTIfDC8Z8SROw/VmvSNk+aDQ04s3OELV68MuaXpPbOfYfP0VxP+HkbsMjpx PhiOefv93XwsWI7/wnu2b97IF6uW47w0HzTpAwAAAAA41mac5ZUzpvnOB8eN xsphUOulA50PPtnf5HPIwYfMB2e5A50jwvnOB7eKo437gnKbo4aDsXxEWC4G rO/+Gj7Y+r1TLR7MJ3r3Hj6oPwkuvDkNYsKnWq+Gz+aHqi/3O7+znb+5b7o0 +0qupZ8PJvkt7dzz8+Dmg32/sW7ifDAfSW/fvFE5VPj7yd984eqV/FXzQQAA AACA5fCl9fW+WmOpvf1tIftKQ5mH03yqfqimZ1vRRydOvHbyZJpqhX/cX1tr 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 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AACAo+8lAAAAAAAAYGXsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAC/d3f/8/JUmSJEmSJEmSJK1I//CPP5IkSZIkSZIkSZIk SZIkSZIkSZIkSUvWP/7ox5IkSZIkSZIkSZIkSZIkSZIkSZIkacn60Y9/IkmS JEmSJEmSJEmSJEmSJEmSJEmSlqwf/0SSJEmSJEmSJEnS6vRTSZIkSZIkSZIk SSvST34qSZIkSZIkSZIkaXX6mSRJkiRJkiRJkqQV6ac/kyRJkiRJkiRJkrQ6 /VySJEmSJEmSJEnSivSzn0uSJEmSJEmSJElanX4hSZIkSZIkSZIkaUX6+S8k SZIkSZIkSZIkrU6/lCRJkiRJkiRJkrQi/UKSJEmSJEmSJEnS6vTLX0mSJEmS JEmSJElakX4pSZIkSZIkSZIkaXX61a8lSZIkSZIkSZIkrUi/+rUkSZIkSZIk SZKk1ek3kiRJkiRJkiRJklakX0uSJEmSJEmSJElanX4jSZIkSZIkSZIkaVX6 zW9+K0mSJEmSJEmSJGlV+q0kSZIkSZIkSZKkVem3v/2dJEmSJEmSJEmSpFXp d5IkSZIkSZIkSZJWpd/97veSJEmSJEmSJEmSVqXfS5IkSZIkSZIkSVqVfv/7 f5IkSZIkSZIkSZK0IgEAAAAAAACr5A+SJEmSJEmSJEmSVqU/SJIkSZIkSZIk SVqV/vCHf5YkSZIkSZIkSZK0IgEAAAAAAACr5H9LkiRJkiRJkiRJWpEAAAAA AACAVfJ/JEmSJEmSJEmSJK1IAAAAAAAAwCr5F0mSJEmSJEmSJEkrEgAAAAAA AAAAAAAAAACwfP4VAAAAAAAAAAAAAAAAAFg6/wYAAAAAAAAAAAAAAAAALJ1/ BwAAAAAAAAAAAAAAAACWzv8FAAAAAAAAAAAAAAAAAJbO/wMAAAAAAABWxv8H lSzq/A== "], {{0, 171}, {2400, 0}}, {0, 255}, ColorFunction->RGBColor], BoxForm`ImageTag["Byte", ColorSpace -> "RGB", Interleaving -> True], Selectable->False], BaseStyle->"ImageGraphics", ImageSize->Magnification[1], ImageSizeRaw->{2400, 171}, PlotRange->{{0, 2400}, {0, 171}}]], "hidefromslideshowgraphic", CellChangeTimes->{{3.4483017593296423`*^9, 3.448301769562791*^9}, { 3.4487297016867533`*^9, 3.448729710294153*^9}, {3.449486136735977*^9, 3.449486146926845*^9}, {3.449490735677544*^9, 3.4494907482045183`*^9}, { 3.473785056790244*^9, 3.4737850735465307`*^9}, {3.485608891427413*^9, 3.485608902078108*^9}, {3.516534228793694*^9, 3.516534238460294*^9}}, Background->None], Cell[CellGroupData[{ Cell[TextData[{ StyleBox["Exploiting the power of Windows inside a ", FontSize->36], StyleBox["Mathematica", FontSize->36, FontSlant->"Italic"], StyleBox[" application", FontSize->36] }], "Title", ShowGroupOpener->False, CellChangeTimes->{{3.448190122176695*^9, 3.44819012385317*^9}, { 3.485609127497636*^9, 3.485609133015955*^9}, {3.514308355088097*^9, 3.514308374696691*^9}, 3.5146594348020153`*^9, 3.5146601881617107`*^9, 3.52260485140625*^9}], Cell["David Bailey", "Subtitle", CellChangeTimes->{{3.485609136120798*^9, 3.4856091511532907`*^9}, { 3.4856091945334663`*^9, 3.485609199379443*^9}, {3.4951031489375*^9, 3.49510314984375*^9}, {3.495106455296875*^9, 3.495106455453125*^9}, { 3.5143083846926413`*^9, 3.514308395249558*^9}, 3.5226048816875*^9}], Cell["http://www.dbaileyconsultancy.co.uk", "Subsubtitle", CellChangeTimes->{ 3.483202458953512*^9, {3.495105345328125*^9, 3.495105347890625*^9}, { 3.49510644571875*^9, 3.495106448390625*^9}, {3.5143083980990458`*^9, 3.514308409442589*^9}, 3.522604897359375*^9}], Cell[TextData[{ "Normal Windows applications open directly from the desktop, and make \ Windows recognise their data files as belonging to them. For example, .DOC \ files belong to a word processor application, and .NB files belong to ", StyleBox["Mathematica", FontSlant->"Italic"], ". Files of the appropriate type also have their own icons inside Explorer \ and on the desktop. This feature of Windows is tremendously powerful, both \ because it offers easy access to data, and because data can be usefully \ embedded in other software - such as XMIND or in HTML. Applications that \ behave like other Windows software, are also much more acceptable to users \ unfamiliar with ", StyleBox["Mathematica", FontSlant->"Italic"], ".\n\nThis talk will describe how to create an application that responds in \ the same way, without writing part of that application in another language, \ and will be based on my Super Widget Package, which is available free from my \ website. It will be illustrated using Hans-Gerlach \ Woudboer\[CloseCurlyQuote]s \[OpenCurlyDoubleQuote]Rapid Business Modeling\ \[CloseCurlyDoubleQuote] software (http://www.rapidbusinessmodeling.com)." }], "Text", CellChangeTimes->{ 3.522604945515625*^9, {3.524836226296875*^9, 3.524836230734375*^9}, { 3.525955000890662*^9, 3.5259550051768255`*^9}}] }, Open ]], Cell[CellGroupData[{ Cell["", "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[CellGroupData[{ Cell["Introduction", "Section", CellChangeTimes->{ 3.483202458955147*^9, {3.514308340990994*^9, 3.514308352103572*^9}, { 3.52344212715625*^9, 3.5234421299375*^9}}], Cell[TextData[{ "This talk is about ", StyleBox["Mathematica", FontSlant->"Italic"], " running under Windows (32 or 64 bits). We often talk about ", StyleBox["Mathematica", FontSlant->"Italic"], " applications as if they were completely analogous to any other Windows \ application. However, unfortunately they usually enjoy a much lower level of \ integration with the operating system. If you use most Windows Applications \ e.g. LibreOffice, or Firefox, or indeed ", StyleBox["Mathematica", FontSlant->"Italic"], " itself, they are well integrated into Windows. In Particular:" }], "Text", CellChangeTimes->{{3.495209008234375*^9, 3.49520915653125*^9}, 3.495209919765625*^9, 3.4952106014375*^9, {3.4952106824375*^9, 3.495210832234375*^9}, 3.514307848543872*^9, {3.514308058576482*^9, 3.514308065607885*^9}, {3.51430841745117*^9, 3.514308419642997*^9}, { 3.5149152616687326`*^9, 3.514915280523456*^9}, {3.514915328702818*^9, 3.5149153375415287`*^9}, 3.514915444638068*^9, {3.52344213534375*^9, 3.523442407984375*^9}, {3.523442438734375*^9, 3.52344249003125*^9}, { 3.52344303925*^9, 3.523443045453125*^9}, {3.524498647515625*^9, 3.524498675390625*^9}, {3.5248362476875*^9, 3.52483625609375*^9}, { 3.5259550662846947`*^9, 3.525955073354861*^9}}], Cell["\<\ \[FilledSmallCircle] Windows applications are usually started from their own \ icon on the desktop.\ \>", "Text", CellChangeTimes->{{3.524836292265625*^9, 3.524836328796875*^9}}], Cell["\<\ \[FilledSmallCircle] Windows applications are organised around data files, \ rather than the applications that process them. This means that users of \ Libre Office (for example) typically open a folder containing files with a \ particular suffix (e.g. .DOC or .XLS) and open them with a double click. \ Behind the scenes, \[OpenCurlyDoubleQuote]opening a file\ \[CloseCurlyDoubleQuote] consists of starting the appropriate application if \ necessary, and passing the file to the application for it to open and display \ as appropriate, but this is ordinarily of no more interest to the user, than \ would be a list of block numbers on the disk where his/her data is actually \ stored!\ \>", "Text", CellChangeTimes->{{3.523443059859375*^9, 3.523443176296875*^9}, { 3.523443223234375*^9, 3.5234435433125*^9}, {3.524498724421875*^9, 3.524498725328125*^9}, 3.524837580109375*^9, {3.525955140210995*^9, 3.52595514297497*^9}}], Cell[TextData[{ "\[FilledSmallCircle] Windows applications use some standard GUI conventions \ that are difficult to copy exactly in a ", StyleBox["Mathematica", FontSlant->"Italic"], " notebook." }], "Text", CellChangeTimes->{{3.523443559515625*^9, 3.523443619015625*^9}}], Cell["\<\ \[FilledSmallCircle] Normally, an application gives little or no hint as to \ the underlying computer language that was used to create it.\ \>", "Text", CellChangeTimes->{{3.52344363953125*^9, 3.523443735484375*^9}}], Cell[TextData[{ "While these matters may seem trivial, they do impede the take up of ", StyleBox["Mathematica", FontSlant->"Italic"], " applications by people who have no interest in maths or computer \ programming. I would also argue that the conventional Windows approach to \ organising data files is so powerful, that many serious applications should \ exploit this mechanism." }], "Text", CellChangeTimes->{{3.495209008234375*^9, 3.49520915653125*^9}, 3.495209919765625*^9, 3.4952106014375*^9, {3.4952106824375*^9, 3.4952108284375*^9}, {3.495210866984375*^9, 3.495210878859375*^9}, { 3.49521712796875*^9, 3.495217145953125*^9}, {3.5143080707765017`*^9, 3.514308090577525*^9}, {3.514308422020039*^9, 3.51430844325245*^9}, { 3.514915910280599*^9, 3.5149159358691387`*^9}, {3.52344374928125*^9, 3.523443943328125*^9}, {3.523444122234375*^9, 3.52344413565625*^9}, { 3.52449878621875*^9, 3.524498791625*^9}}], Cell["\<\ A variety of fairly general software environments (such as web browsers) \ exploit this mechanism to enable data to be opened easily from within their \ applications:\ \>", "Text", CellChangeTimes->{{3.495209008234375*^9, 3.49520915653125*^9}, 3.495209919765625*^9, 3.4952106014375*^9, {3.4952106824375*^9, 3.4952108284375*^9}, {3.495210866984375*^9, 3.495210878859375*^9}, { 3.49521712796875*^9, 3.495217145953125*^9}, {3.5143080707765017`*^9, 3.514308090577525*^9}, {3.514308422020039*^9, 3.51430844325245*^9}, { 3.514915910280599*^9, 3.5149159358691387`*^9}, {3.52344374928125*^9, 3.523443943328125*^9}, {3.523444122234375*^9, 3.52344414284375*^9}, { 3.523444594640625*^9, 3.523444648453125*^9}, {3.523444715953125*^9, 3.523444716609375*^9}, {3.523445005171875*^9, 3.523445019984375*^9}}], Cell["\<\

Starting programs from HTML

This illustrated how data sets can be linked into a narative composed in HTML \ (typically stored locally rather than on the web). A data file \ \>", "Program", CellChangeTimes->{3.523444707390625*^9}], Cell[TextData[{ "I have discussed the latter two points at previous conferences, so this \ paper focuses on the issue of making a ", StyleBox["Mathematica", FontSlant->"Italic"], " application appear data oriented." }], "Text", CellChangeTimes->{{3.523443989390625*^9, 3.5234441044375*^9}}] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["", "SlideShowNavigationBar", CellChangeTimes->{3.524836084203125*^9}, CellTags->"SlideShowHeader"], Cell[CellGroupData[{ Cell["Data orientation the hard way", "Section", CellChangeTimes->{ 3.483202458955147*^9, {3.51430857274755*^9, 3.514308578875259*^9}, { 3.523444958875*^9, 3.523444970109375*^9}, 3.524836084234375*^9}], Cell["\<\ When a Windows Application (or maybe its installer) registers that it \ processes a particular data type (i.e. files with a particular suffix, such \ as .DOC), it does so by storing the following information in the registry:\ \>", "Text", CellChangeTimes->{{3.523445075421875*^9, 3.523445222671875*^9}, 3.524836084234375*^9}], Cell["\<\ \[FilledSmallCircle] A command that should be used to open the relevant \ files (where %1 is used as a placeholder for the actual data file path).\ \>", "Text", CellChangeTimes->{{3.523445229390625*^9, 3.5234453294375*^9}, 3.524836084234375*^9}], Cell[TextData[{ "\[FilledSmallCircle] An icon associated with data of that particular \ type. For example, ", StyleBox["Mathematica", FontSlant->"Italic"], " supplies an icon for files with the NB suffix: ", Cell[BoxData[ GraphicsBox[ TagBox[RasterBox[CompressedData[" 1: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 ASfLHHQ= "], {{0, 51}, {53, 0}}, {0, 255}, ColorFunction->RGBColor], BoxForm`ImageTag["Byte", ColorSpace -> "RGB", Interleaving -> True], Selectable->False], BaseStyle->"ImageGraphics", ImageSize->Automatic, ImageSizeRaw->{53, 51}, PlotRange->{{0, 53}, {0, 51}}]], "Input"] }], "Text", CellChangeTimes->{{3.52344533690625*^9, 3.5234453733125*^9}, { 3.523445569140625*^9, 3.523445572671875*^9}, {3.523445829640625*^9, 3.52344589209375*^9}, 3.524836084234375*^9}], Cell["\<\ \[FilledSmallCircle] A textual description of the data type, to be \ displayed when the user hovers over the corresponding icon.\ \>", "Text", CellChangeTimes->{{3.523446029625*^9, 3.52344607071875*^9}, { 3.52344697040625*^9, 3.523446991109375*^9}, 3.524836084234375*^9}], Cell[TextData[{ "This information remains stored even after the application has terminated, \ ready for use when the user tries to open one of his data files. ", StyleBox["Remember, when a user comes to open a file, the corresponding \ application may not be running.", FontWeight->"Bold"] }], "Text", CellChangeTimes->{{3.523447004171875*^9, 3.52344706534375*^9}, { 3.52449889378125*^9, 3.524498930453125*^9}, 3.524836084234375*^9}], Cell[TextData[{ "Clearly, one way to achieve this functionality for a ", StyleBox["Mathematica", FontSlant->"Italic"], " application, would be to write a GUI front end for the code, in a language \ such as Java or C, and let it register the file types as belonging to it. \ Such a program would then open a link to MathKernel and use ", StyleBox["Mathematica", FontSlant->"Italic"], " as an invisible calculation engine." }], "Text", CellChangeTimes->{{3.523446138125*^9, 3.523446299078125*^9}, { 3.52344707815625*^9, 3.523447081015625*^9}, 3.524836084234375*^9}], Cell[BoxData[ GraphicsBox[{{ {RGBColor[0.8, 0.8, 0.8], RectangleBox[{-0.5, 9.5}], DiskBox[{-0.5, 10.35}, 0.15], DiskBox[{-0.5, 9.65}, 0.15], DiskBox[{0.5, 10.35}, 0.15], DiskBox[{0.5, 9.65}, 0.15], RectangleBox[{-0.65, 9.65}, {-0.5, 10.35}], RectangleBox[{0.65, 9.65}, {0.5, 10.35}]}, {GrayLevel[0], InsetBox[ StyleBox["\<\"Windows Application\\n(Java or C)\"\>", StripOnInput->False, FontSize->20], {0, 10}]}}, { {RGBColor[0.8, 0.8, 0.8], RectangleBox[{1.5, 9.5}], DiskBox[{1.5, 10.35}, 0.15], DiskBox[{1.5, 9.65}, 0.15], DiskBox[{2.5, 10.35}, 0.15], DiskBox[{2.5, 9.65}, 0.15], RectangleBox[{1.35, 9.65}, {1.5, 10.35}], RectangleBox[{2.65, 9.65}, {2.5, 10.35}]}, {GrayLevel[0], InsetBox[ StyleBox["\<\"GUI Interface\\n(Java or C)\"\>", StripOnInput->False, FontSize->20], {2, 10}]}}, { {RGBColor[0.8, 0.8, 0.8], RectangleBox[{0.5, 7.5}], DiskBox[{0.5, 8.35}, 0.15], DiskBox[{0.5, 7.65}, 0.15], DiskBox[{1.5, 8.35}, 0.15], DiskBox[{1.5, 7.65}, 0.15], RectangleBox[{0.35, 7.65}, {0.5, 8.35}], RectangleBox[{1.65, 7.65}, {1.5, 8.35}]}, {GrayLevel[0], InsetBox[ StyleBox["\<\"Mathematica code\"\>", StripOnInput->False, FontSize->20], {1, 8}]}}, LineBox[{{0, 9.5}, {1, 8.5}}], InsetBox[ StyleBox["\<\"MathLink\"\>", StripOnInput->False, FontSize->20], NCache[{Rational[1, 2], 9.}, {0.5, 9.}], {-1.2, 0}], LineBox[{{0.65, 10}, {1.35, 10}}]}, ImageSize->500]], "Input", CellChangeTimes->{3.52483286403125*^9, 3.524836084234375*^9}, ImageCache->GraphicsData["CompressedBitmap", "\<\ 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 P3Py5QXpdRaBpH/v3vt/jw74f/J0g74=\ \>"]], Cell[TextData[{ "\[FilledSmallCircle] From the above diagram, you can see that much of the \ code ends up being written in a language other than ", StyleBox["Mathematica", FontSlant->"Italic"], "." }], "Text", CellChangeTimes->{{3.524832907953125*^9, 3.52483296934375*^9}, 3.524836084234375*^9}] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["", "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[CellGroupData[{ Cell[TextData[{ "Accessing the Windows Registry inside ", StyleBox["Mathematica", FontSlant->"Italic"], " code" }], "Section", CellChangeTimes->{ 3.483202458955147*^9, {3.514308863196991*^9, 3.5143088633311243`*^9}, { 3.524833806078125*^9, 3.524833826953125*^9}, 3.524836084203125*^9}], Cell[TextData[{ "\[FilledSmallCircle] Although in what follows, the necessary registry \ changes are performed automatically inside the Super Widget Package (SWP), \ the relevant functions exist inside Developer` context, and can be used by \ any ", StyleBox["Mathematica", FontSlant->"Italic"], " program running under Windows, although they are not documented:" }], "Text", CellChangeTimes->{{3.514308661619236*^9, 3.514308664754455*^9}, { 3.524833835546875*^9, 3.524833845203125*^9}, {3.524833886296875*^9, 3.524833975953125*^9}, {3.524834238046875*^9, 3.52483423871875*^9}, 3.524836084203125*^9, {3.525525891359375*^9, 3.525525905703125*^9}, { 3.525955362029955*^9, 3.5259553842418947`*^9}}], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"?", "Developer`*Registry*"}]], "Input", CellChangeTimes->{{3.524834211265625*^9, 3.52483422259375*^9}, 3.524836084203125*^9}], Cell[BoxData[ DynamicModuleBox[{Typeset`open$$ = True}, PaneSelectorBox[{False-> RowBox[{ OpenerBox[Dynamic[Typeset`open$$], ImageSize->Small], StyleBox["Developer`", "InfoHeading"]}], True->GridBox[{ { RowBox[{ OpenerBox[Dynamic[Typeset`open$$], ImageSize->Small], StyleBox["Developer`", "InfoHeading"]}]}, {GridBox[{ { ButtonBox["CreateRegistryKey", BaseStyle->"InformationLink", ButtonData:>{ "Info3524837824-7231726", {"CreateRegistryKey", "Developer`"}}, ButtonNote->"Developer`"], ButtonBox["ReadRegistryKeyValues", BaseStyle->"InformationLink", ButtonData:>{ "Info3524837824-7231726", {"ReadRegistryKeyValues", "Developer`"}}, ButtonNote->"Developer`"], ButtonBox["RemoveRegistryKeyValues", BaseStyle->"InformationLink", ButtonData:>{ "Info3524837824-7231726", { "RemoveRegistryKeyValues", "Developer`"}}, ButtonNote->"Developer`"]}, { ButtonBox["EnumerateRegistrySubkeys", BaseStyle->"InformationLink", ButtonData:>{ "Info3524837824-7231726", { "EnumerateRegistrySubkeys", "Developer`"}}, ButtonNote->"Developer`"], ButtonBox["RemoveRegistryKey", BaseStyle->"InformationLink", ButtonData:>{ "Info3524837824-7231726", {"RemoveRegistryKey", "Developer`"}}, ButtonNote->"Developer`"], ButtonBox["WriteRegistryKeyValues", BaseStyle->"InformationLink", ButtonData:>{ "Info3524837824-7231726", {"WriteRegistryKeyValues", "Developer`"}}, ButtonNote->"Developer`"]} }, DefaultBaseStyle->"InfoGrid", GridBoxItemSize->{"Columns" -> {{ Scaled[0.31666666666666665`]}}}]} }, GridBoxAlignment->{"Columns" -> {{Left}}, "Rows" -> {{Baseline}}}]}, Dynamic[Typeset`open$$], ImageSize->Automatic]]], "Print", "InfoCell", GeneratedCell->False, CellAutoOverwrite->False, CellChangeTimes->{3.524834224796875*^9, 3.52483608421875*^9}] }, Open ]], Cell["\<\ \[FilledSmallCircle] Here are some sample calls to these functions, which \ are extremely easy to use:\ \>", "Text", CellChangeTimes->{{3.524834455875*^9, 3.524834495015625*^9}, 3.52483608421875*^9}], Cell["\<\ Create a key if it doesn\[CloseCurlyQuote]t already exist\ \>", "Text", CellChangeTimes->{{3.524834595796875*^9, 3.5248346093125*^9}, 3.52483608421875*^9}], Cell[BoxData[ RowBox[{"Developer`CreateRegistryKey", "[", "\"\\"", "]"}]], "Input", CellChangeTimes->{3.524834175546875*^9, 3.52483608421875*^9}], Cell["\<\ Write values into one or more keys, name the key Null to reference the \ default value\ \>", "Text", CellChangeTimes->{{3.524834668390625*^9, 3.52483473715625*^9}, 3.52483608421875*^9}], Cell[BoxData[ RowBox[{"Developer`WriteRegistryKeyValues", "[", RowBox[{ "\"\\"", ",", RowBox[{"{", "\n", " ", RowBox[{"\"\\"", "->", "command\[Breve]file"}], "}"}]}], "]"}]], "Input", CellChangeTimes->{3.52483608421875*^9}], Cell["\<\ Read back a set of keys. Note that these are returned in a form suitable for \ use in ReplaceAll.\ \>", "Text", CellChangeTimes->{{3.524834790296875*^9, 3.5248348428125*^9}, 3.524836084234375*^9}], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"Developer`ReadRegistryKeyValues", "[", "\"\\"", "]"}]], "Input", CellChangeTimes->{{3.524834349890625*^9, 3.524834423734375*^9}, 3.524836084234375*^9}], Cell[BoxData[ RowBox[{"{", RowBox[{ RowBox[{"\<\"MathFile\"\>", "\[Rule]", "\<\"C:\\\\Program Files\\\\Wolfram \ Research\\\\Mathematica\\\\8.0\\\\Mathematica.exe\"\>"}], ",", RowBox[{"\<\"DefaultMathSplash\"\>", "\[Rule]", \ "\<\"c:\\\\MathematicaBase\\\\Applications\\\\SuperWidgetPackage\\\\\ MathLauncherSplash.jpg\"\>"}], ",", RowBox[{"\<\".flowMathSplash\"\>", "\[Rule]", "\<\"c:\\\\MathematicaBase\\\\Applications\\\\BusinessModeling\ \\\\Data\\\\SplashRapidBusinessModeling.jpg\"\>"}], ",", RowBox[{"\<\".rbmMathSplash\"\>", "\[Rule]", "\<\"c:\\\\MathematicaBase\\\\Applications\\\\BusinessModeling\ \\\\Data\\\\SplashRapidBusinessModeling.jpg\"\>"}], ",", RowBox[{"\<\".rbmappMathSplash\"\>", "\[Rule]", "\<\"c:\\\\MathematicaBase\\\\Applications\\\\BusinessModeling\ \\\\Data\\\\SplashRapidBusinessModeling.jpg\"\>"}], ",", RowBox[{"\<\"DataWindowTitle\"\>", "\[Rule]", "\<\"RapidBusinessModeling Modeler Ver 3.7\"\>"}]}], "}"}]], "Output", GeneratedCell->False, CellAutoOverwrite->False, CellChangeTimes->{{3.524834378765625*^9, 3.524834424703125*^9}, 3.52483457509375*^9, 3.524836084234375*^9}] }, Open ]], Cell["Remove key values", "Text", CellChangeTimes->{{3.524834856671875*^9, 3.52483486303125*^9}, 3.524836084234375*^9}], Cell[BoxData[ RowBox[{"Developer`RemoveRegistryKeyValues", "[", "\n", " ", RowBox[{ "\"\\"", ",", RowBox[{"{", "\"\\"", "}"}]}], "\n", " ", "]"}]], "Input", CellChangeTimes->{3.524836084234375*^9}], Cell["\<\ \[FilledSmallCircle] Obviously, these functions only work in a suitable \ environment (32-bit or 64-bit Windows, or Wine).\ \>", "Text", CellChangeTimes->{{3.52483493678125*^9, 3.524835029515625*^9}, 3.524836084234375*^9}] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["", "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[CellGroupData[{ Cell["Data orientation using the Super Widget Package", "Section", CellChangeTimes->{ 3.483202458955147*^9, {3.514308863196991*^9, 3.5143088633311243`*^9}, { 3.52344722915625*^9, 3.523447242734375*^9}}], Cell[TextData[{ "\[FilledSmallCircle] ", "Using the Super Widget Package (SWP), everything can be written in ", StyleBox["Mathematica", FontSlant->"Italic"], " code, and the registration process is performed with one call to Install\ \[Breve]MathLauncher\[Breve]Application for each type of data to be \ registered (e.g. .RBM and .FLOW)." }], "Text", CellChangeTimes->{{3.514308661619236*^9, 3.514308664754455*^9}, { 3.523447387046875*^9, 3.523447516265625*^9}, {3.5248333455*^9, 3.52483334590625*^9}, {3.525525870203125*^9, 3.525525872375*^9}}], Cell[BoxData[ RowBox[{ RowBox[{"Install\[Breve]MathLauncher\[Breve]Application", "[", RowBox[{ "\"\\"", ",", "\n", " ", "\"\<.rbm\>\"", ",", "\"\\"", ",", "\n", " ", "\"\\"", ",", "\n", " ", "\"\\"", ",", "\n", " ", RowBox[{ "\"\\"", "->", "\"\\""}], ",", "\n", " ", RowBox[{"\"\\"", "\[Rule]", "False"}]}], "]"}], ";"}]], "Input", CellChangeTimes->{{3.523447291828125*^9, 3.523447365890625*^9}}], Cell[BoxData[ GraphicsBox[{{ {RGBColor[0.8, 0.8, 0.8], RectangleBox[{-0.5, 9.5}], DiskBox[{-0.5, 10.35}, 0.15], DiskBox[{-0.5, 9.65}, 0.15], DiskBox[{0.5, 10.35}, 0.15], DiskBox[{0.5, 9.65}, 0.15], RectangleBox[{-0.65, 9.65}, {-0.5, 10.35}], RectangleBox[{0.65, 9.65}, {0.5, 10.35}]}, {GrayLevel[0], InsetBox[ StyleBox["\<\"MathLauncher.EXE\\n(Part of the SWP)\"\>", StripOnInput->False, FontSize->20], {0, 10}]}}, { {RGBColor[0.8, 0.8, 0.8], RectangleBox[{-0.5, 7.5}], DiskBox[{-0.5, 8.35}, 0.15], DiskBox[{-0.5, 7.65}, 0.15], DiskBox[{0.5, 8.35}, 0.15], DiskBox[{0.5, 7.65}, 0.15], RectangleBox[{-0.65, 7.65}, {-0.5, 8.35}], RectangleBox[{0.65, 7.65}, {0.5, 8.35}]}, {GrayLevel[0], InsetBox[ StyleBox["\<\"Mathematica code\\n(including GUI)\"\>", StripOnInput->False, FontSize->20], {0, 8}]}}, LineBox[{{0, 9.5}, {0, 8.5}}], InsetBox[ StyleBox["\<\"MathLink\"\>", StripOnInput->False, FontSize->20], {0, 9.}, {-1.2, 0}]}, ImageSize->250]], "Input"], Cell[TextData[{ "\[FilledSmallCircle] If the GUI is created using the SWP, or using the \ Front End, all the code for the application is written in ", StyleBox["Mathematica", FontSlant->"Italic"], "." }], "Text", CellChangeTimes->{{3.52483359215625*^9, 3.524833675203125*^9}}], Cell[TextData[{ "\[FilledSmallCircle] Because the names of the splash screen and ", StyleBox["Mathematica", FontSlant->"Italic"], " .m files are stored in the registry indexed by file suffix type, this \ scheme can potentially cater for multiple data types (with different file \ suffices) and multiple Mathematica applications. " }], "Text", CellChangeTimes->{{3.524833394609375*^9, 3.5248335800625*^9}, 3.524837603390625*^9}] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["", "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[CellGroupData[{ Cell[TextData[{ StyleBox["Mathematica", FontSlant->"Italic"], " applications started using this scheme" }], "Section", CellChangeTimes->{ 3.483202458955147*^9, {3.514308863196991*^9, 3.5143088633311243`*^9}, { 3.524836399546875*^9, 3.5248364205625*^9}}], Cell[TextData[{ "\[FilledSmallCircle] Nothing in the SWP, \[OpenCurlyQuote]knows\ \[CloseCurlyQuote] what it means to open a data file of a specific type. \ However, the variable MathLauncherSuppliedOpen is set to the ", StyleBox["full path name", FontVariations->{"Underline"->True}], " of the data file that initiated the process." }], "Text", CellChangeTimes->{{3.514308661619236*^9, 3.514308664754455*^9}, { 3.52483644915625*^9, 3.5248364746875*^9}, {3.52483654221875*^9, 3.524836586546875*^9}}], Cell["\<\ \[FilledSmallCircle] If ValueQ[MathLauncherSuppliedOpen] is False, it can be \ assumed that the program was started conventionally\ \>", "Text", CellChangeTimes->{{3.5248366100625*^9, 3.524836660828125*^9}}], Cell["\<\ \[FilledSmallCircle] Typically, an application may have more than one kind \ of data, for example, Rapid Business Modelling processes two types of data, \ .RBM and .FLOW files. However, it is often convenient to register one extra \ data type \[Dash] say .RBMAPP \[Dash] that represents the process of starting \ the application without a specific initial data set. \ \>", "Text", CellChangeTimes->{{3.5248366970625*^9, 3.524836768203125*^9}, { 3.524836848859375*^9, 3.524836942484375*^9}}], Cell["\<\ \[FilledSmallCircle] Since a program can easily extract the suffix of a file \ name, it can use it to determine the type of processing required:\ \>", "Text", CellChangeTimes->{{3.524836951859375*^9, 3.5248369828125*^9}, { 3.524837090421875*^9, 3.52483710796875*^9}}], Cell[CellGroupData[{ Cell[BoxData[ RowBox[{"ToUpperCase", "[", RowBox[{"FileExtension", "[", "\"\\"", "]"}], "]"}]], "Input"], Cell[BoxData["\<\"NB\"\>"], "Output", CellChangeTimes->{3.5248371503125*^9}] }, Open ]], Cell["\<\ (Remember that Windows file names are case insensitive, so tests should be \ made after forcing the case.)\ \>", "Text", CellChangeTimes->{{3.524837118765625*^9, 3.524837178328125*^9}}], Cell["\<\ \[FilledSmallCircle] The .RBMAPP doesn\[CloseCurlyQuote]t open any file, it \ just starts the application.\ \>", "Text", CellChangeTimes->{{3.524837190359375*^9, 3.524837249609375*^9}}] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["", "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[CellGroupData[{ Cell["Using multiple data files", "Section", CellChangeTimes->{ 3.483202458955147*^9, {3.514308863196991*^9, 3.5143088633311243`*^9}, { 3.524836399546875*^9, 3.5248364205625*^9}, {3.52483729340625*^9, 3.524837299640625*^9}, {3.524837342671875*^9, 3.52483736075*^9}}], Cell[TextData[{ "If a user opens several data files, one after another, the files are \ normally passed to one instance of the corresponding application. Thus if you \ open two .NB files, they both end up in one copy of ", StyleBox["Mathematica", FontSlant->"Italic"], "." }], "Text", CellChangeTimes->{{3.524837413484375*^9, 3.52483750671875*^9}}], Cell["\<\ \[FilledSmallCircle] Once again, this functionality can be enormously \ useful to a user. For example, data files may get combined in a variety of \ ways, but this only works if the data is loaded into one copy of the \ application. In addition, each separate copy of an application requires a \ separate kernel - so it is easy to exceed the license limit.\ \>", "Text", CellChangeTimes->{{3.52552463621875*^9, 3.525524871125*^9}}], Cell["\<\ \[FilledSmallCircle] Obviously an application that is going to receive \ additional data, must be able to respond in some way. Assuming it creates a \ GUI interface, there is a natural point when the program is idling awaiting \ further user activity, when it can respond to such a request.\ \>", "Text", CellChangeTimes->{{3.52552459153125*^9, 3.525524622640625*^9}, { 3.5255248995625*^9, 3.525525024*^9}}], Cell["\<\ \[FilledSmallCircle] A program with a SWP GUI calls the following function: \ \>", "Text", CellChangeTimes->{{3.52552517946875*^9, 3.525525218203125*^9}}], Cell[BoxData[ RowBox[{"Set\[Breve]Command\[Breve]File", "[", "commandFile", "]"}]], "Input",\ CellChangeTimes->{{3.525525237296875*^9, 3.525525247234375*^9}}], Cell["\<\ Where commandFile is the full path name of a file that will be used whenever \ a user double clicks a data icon on the desktop.\ \>", "Text", CellChangeTimes->{{3.525525256703125*^9, 3.525525324265625*^9}}], Cell["\<\ \[FilledSmallCircle] It then supplies a definition for the function \ SuperWidgetPackage`MathLauncher\[Breve]Open[file_] which will be called with \ the full path name of any additional data file that the user chooses to open. \ This call will be made when the GUI is idling, and so will not preempt the \ application code (a common source of instability).\ \>", "Text", CellChangeTimes->{{3.5255255198125*^9, 3.5255256729375*^9}, { 3.5255260086875*^9, 3.52552601709375*^9}}], Cell["\<\ \[FilledSmallCircle] Checks are made to ensure the application is already \ started, and that it has executed the above call to prepare it to accept \ additional commands.\ \>", "Text", CellChangeTimes->{{3.525525337453125*^9, 3.525525392640625*^9}}], Cell["\<\ \[FilledSmallCircle] Note that the SWP can operate an Multiple Document \ Interface (MDI) analogous to (say) Microsoft Word, in which several files \ coexist on one desktop.\ \>", "Text", CellChangeTimes->{{3.525525725296875*^9, 3.525525825640625*^9}}] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell["", "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[CellGroupData[{ Cell["Starting in the Front End", "Section", CellChangeTimes->{ 3.483202458955147*^9, {3.514308863196991*^9, 3.5143088633311243`*^9}, { 3.524836399546875*^9, 3.5248364205625*^9}, {3.52483729340625*^9, 3.524837299640625*^9}, {3.524837342671875*^9, 3.52483736075*^9}, { 3.525956083457317*^9, 3.525956093732091*^9}}], Cell[BoxData[""], "Input", CellChangeTimes->{{3.5259560314525375`*^9, 3.525956036499795*^9}}], Cell["\<\ \[FilledSmallCircle] The Install\[Breve]MathLauncher\[Breve]Application \ takes an option, \[OpenCurlyDoubleQuote]UseFrontEnd\[CloseCurlyDoubleQuote], \ which when set to True, will lanch a data set into the Front End. From the \ user\[CloseCurlyQuote]s point of view, this works in the same way as \ launching into the kernel, but it required a trick to persuade the FrontEnd \ to start running a .m file without any action on the part of the user.\ \>", "Text", CellChangeTimes->{{3.5259560999710627`*^9, 3.525956100251466*^9}, { 3.5259561406695843`*^9, 3.5259561477297363`*^9}, {3.52595618253979*^9, 3.5259564247380543`*^9}, 3.525957357019664*^9}], Cell["\<\ \[FilledSmallCircle] The MathLauncher program sets some information into \ registry keys, and starts a special notebook file (part of the SWP) which \ contains Dynamic code which closes itself down and performs a Get on the \ application .m file. After this step, the process proceeds as above, but it \ can make full use of the Front End.\ \>", "Text", CellChangeTimes->{{3.525956627719928*^9, 3.5259568079891424`*^9}}], Cell["\<\ \[FilledSmallCircle] Creating a notebook that contains Dynamic code that \ immediately closes itself can be rather tricky! I solved this by making the \ dynamic code dependent on the variable EditingFrontEndLauncher having no \ value. This allowed me to edit this notebook in the ordinary way. This \ notebook can be found inside the SWP: FrontEndLauncher.nb, and may be \ adaptable to other situations in which a notebook is required to start \ executing immediately.\ \>", "Text", CellChangeTimes->{{3.5259568169920883`*^9, 3.525956937595507*^9}, { 3.5259569721051297`*^9, 3.5259571954262495`*^9}, {3.5259573227243395`*^9, 3.5259573324182787`*^9}, 3.5259573637994127`*^9}] }, Open ]] }, Open ]] }, AutoGeneratedPackage->None, ScreenStyleEnvironment->"SlideShow", WindowSize->{1405, 856}, WindowMargins->{{0, Automatic}, {Automatic, 0}}, PrintingCopies->1, PrintingPageRange->{1, Automatic}, ShowSelection->True, FrontEndVersion->"8.0 for Mac OS X x86 (32-bit, 64-bit Kernel) (October 5, \ 2011)", StyleDefinitions->Notebook[{ Cell[ StyleData[StyleDefinitions -> "Default.nb"]], Cell[ CellGroupData[{ Cell["Style Environment Names", "Section"], Cell[ StyleData[All, "Condensed"], MenuSortingValue -> None], Cell[ StyleData[All, "SlideShow"], DockedCells -> { FEPrivate`FrontEndResource["FEExpressions", "SlideshowToolbar"], Cell[ BoxData[ GraphicsBox[ TagBox[ RasterBox[CompressedData[" 1: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 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgmI4AAAAAAAAAg3EaAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACYux/+8J8kSZIk SZIkSZIkDaR//clPJUmSJEmSJEmSJEmSJEmSJEmSJEnSPusnP/2ZJEmSJEmS JEmSpIH005/9XJIkSZIkSZIkSZIkSZIkSZIkSZIk7bN+9vNfSJIkSZIkSZIk SRpIP/+FJEmSJEmSJEmSpOH0S0mSJEmSJEmSJEkD6Re//JUkSZIkSZIkSZKk gfTLX0mSJEmSJEmSJEkaTr+WJEmSJEmSJEmSNJB+9evfSJIkSZIkSZIkSRpI v5YkSZIkSZIkSZI0nH7zhSRJkiRJkiRJkqSB9JsvJEmSJEmSJEmSJA2lL774 rSRJkiRJkiRJkqSh9NsvJUmSJEmSJEmSJA2k334pSZIkSZIkSZIkaSh9+eXv JEmSJEmSJEmSJA2l30mSJEmSJEmSJEkaSr/76itJkiRJkiRJkiRJA+mrr34v SZIkSZIkSZIkaSj9XpIkSZIkSZIkSdJQ+v3XX0uSJEmSJEmSJEkaSF9//QdJ kiRJkiRJkiRJAwkAAAAAAAAYkD/+UZIkSZIkSZIkSdJAAgAAAAAAAIbj3wAA AAAAAIAB+XdJkiRJkiRJkiRJAwkAAAAAAAAYjv8AAAAAAAAABuQ/JUmSJEmS JEmSJA0kAAAAAAAAYDj+CwAAAAAAAAAAAAAAAADYd/4bAAAAAAAAGIz/AQAA AAAAAAAAAAAAAAD2nf8FAAAAAAAABuP/ADmq/Zs= "], {{0, 140}, {2400, 0}}, {0, 255}, ColorFunction -> RGBColor], BoxForm`ImageTag[ "Byte", ColorSpace -> "RGB", Interleaving -> True], Selectable -> False], BaseStyle -> "ImageGraphics", ImageSize -> Magnification[1], ImageSizeRaw -> {2400, 140}, PlotRange -> {{0, 2400}, {0, 140}}]], "", CellMargins -> 0, CellChangeTimes -> {{3.516548605022827*^9, 3.516548633085456*^9}, { 3.516616961864057*^9, 3.516616982571135*^9}}]}, CellMargins -> 0, CellBracketOptions -> { "Color" -> RGBColor[0.739193, 0.750317, 0.747173]}], Cell[ BoxData[ GraphicsBox[ TagBox[ RasterBox[CompressedData[" 1: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 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgmI4AAAAAAAAAg3EaAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACYux/+8J8kSZIk SZIkSZIkDaR//clPJUmSJEmSJEmSJEmSJEmSJEmSJEnSPusnP/2ZJEmSJEmS JEmSpIH005/9XJIkSZIkSZIkSZIkSZIkSZIkSZIk7bN+9vNfSJIkSZIkSZIk SRpIP/+FJEmSJEmSJEmSpOH0S0mSJEmSJEmSJEkD6Re//JUkSZIkSZIkSZKk gfTLX0mSJEmSJEmSJEkaTr+WJEmSJEmSJEmSNJB+9evfSJIkSZIkSZIkSRpI v5YkSZIkSZIkSZI0nH7zhSRJkiRJkiRJkqSB9JsvJEmSJEmSJEmSJA2lL774 rSRJkiRJkiRJkqSh9NsvJUmSJEmSJEmSJA2k334pSZIkSZIkSZIkaSh9+eXv JEmSJEmSJEmSJA2l30mSJEmSJEmSJEkaSr/76itJkiRJkiRJkiRJA+mrr34v SZIkSZIkSZIkaSj9XpIkSZIkSZIkSdJQ+v3XX0uSJEmSJEmSJEkaSF9//QdJ kiRJkiRJkiRJAwkAAAAAAAAYkD/+UZIkSZIkSZIkSdJAAgAAAAAAAIbj3wAA AAAAAIAB+XdJkiRJkiRJkiRJAwkAAAAAAAAYjv8AAAAAAAAABuQ/JUmSJEmS JEmSJA0kAAAAAAAAYDj+CwAAAAAAAAAAAAAAAADYd/4bAAAAAAAAGIz/AQAA AAAAAAAAAAAAAAD2nf8FAAAAAAAABuP/ADmq/Zs= "], {{0, 140}, {2400, 0}}, {0, 255}, ColorFunction -> RGBColor], BoxForm`ImageTag["Byte", ColorSpace -> "RGB", Interleaving -> True], Selectable -> False], BaseStyle -> "ImageGraphics", ImageSize -> Magnification[1], ImageSizeRaw -> {2400, 140}, PlotRange -> {{0, 2400}, {0, 140}}]], "", CellMargins -> 0, CellChangeTimes -> {{3.516548605022827*^9, 3.516548633085456*^9}, { 3.516616961864057*^9, 3.516616982571135*^9}}], Cell[ BoxData[ RowBox[{ RowBox[{"(*", RowBox[{"Evaluate", " ", "the", " ", "following", " ", "to", " ", "copy", " ", "the", " ", "style", " ", "of", " ", "the", " ", "cell", " ", "above", " ", "into", " ", "\[IndentingNewLine]", "the", " ", "docked", " ", "cell", " ", "style", " ", "of", " ", RowBox[{"the", " ", "'"}], RowBox[{"Notebook", "'"}], " ", "definition", " ", RowBox[{"(", RowBox[{"2", " ", "cells", " ", "above"}], ")"}], " ", "\[IndentingNewLine]", "These", " ", "two", " ", "cell", " ", "can", " ", "be", " ", "removed", " ", "once", " ", "the", " ", "docked", " ", "cell", " ", "is", " ", RowBox[{"created", "."}]}], "\[IndentingNewLine]", "*)"}], "\[IndentingNewLine]", RowBox[{ RowBox[{ RowBox[{"SelectionMove", "[", RowBox[{ RowBox[{"SelectedNotebook", "[", "]"}], ",", "Previous", ",", "Cell", ",", "2"}], "]"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"celldata", "=", RowBox[{"NotebookRead", "[", RowBox[{"SelectedNotebook", "[", "]"}], "]"}]}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"SelectionMove", "[", RowBox[{ RowBox[{"SelectedNotebook", "[", "]"}], ",", "Previous", ",", "Cell", ",", "1"}], "]"}], ";"}], "\[IndentingNewLine]", RowBox[{ RowBox[{"SetOptions", "[", RowBox[{ RowBox[{"NotebookSelection", "[", RowBox[{"SelectedNotebook", "[", "]"}], "]"}], ",", RowBox[{"DockedCells", "\[Rule]", RowBox[{"{", RowBox[{ RowBox[{"FEPrivate`FrontEndResource", "[", RowBox[{ "\"FEExpressions\"", ",", "\"SlideshowToolbar\""}], "]"}], ",", "celldata"}], "}"}]}]}], "]"}], ";"}]}]}]], "Input", FontWeight -> "Bold"]}, Closed]], Cell[ CellGroupData[{ Cell["Notebook Options Settings", "Section"], Cell[ StyleData["Notebook"], CellBracketOptions -> { "Color" -> RGBColor[0.739193, 0.750317, 0.747173]}]}, Open]], Cell[ CellGroupData[{ Cell["Styles for Title and Section Cells", "Section"], Cell[ CellGroupData[{ Cell[ StyleData["Title"], ShowCellBracket -> Automatic, ShowGroupOpener -> False, CellMargins -> {{58, 0}, {30, 0}}, CellBracketOptions -> {"Margins" -> {0, 0}}, CellGroupingRules -> {"TitleGrouping", 0}, PageBreakBelow -> False, CellFrameMargins -> {{20, 20}, {20, 20}}, DefaultNewInlineCellStyle -> "None", InputAutoReplacements -> {"TeX" -> StyleBox[ RowBox[{"T", AdjustmentBox[ "E", BoxMargins -> {{-0.075, -0.085}, {0, 0}}, BoxBaselineShift -> 0.5], "X"}]], "LaTeX" -> StyleBox[ RowBox[{"L", StyleBox[ AdjustmentBox[ "A", BoxMargins -> {{-0.36, -0.1}, {0, 0}}, BoxBaselineShift -> -0.2], FontSize -> Smaller], "T", AdjustmentBox[ "E", BoxMargins -> {{-0.075, -0.085}, {0, 0}}, BoxBaselineShift -> 0.5], "X"}]], "mma" -> "Mathematica", "Mma" -> "Mathematica", "MMA" -> "Mathematica", "gridMathematica" -> FormBox[ RowBox[{"grid", AdjustmentBox[ StyleBox["Mathematica", FontSlant -> "Italic"], BoxMargins -> {{-0.175, 0}, {0, 0}}]}], TextForm], "webMathematica" -> FormBox[ RowBox[{"web", AdjustmentBox[ StyleBox["Mathematica", FontSlant -> "Italic"], BoxMargins -> {{-0.175, 0}, {0, 0}}]}], TextForm], Inherited}, CellChangeTimes -> {3.479211616867702*^9, 3.483202458952606*^9}, TextAlignment -> Left, LineSpacing -> {1, 0}, LanguageCategory -> "NaturalLanguage", CounterIncrements -> "Title", CounterAssignments -> {{"Section", 0}, {"Equation", 0}, { "Figure", 0}, {"Subtitle", 0}, {"Subsubtitle", 0}}, FontFamily -> "Helvetica", FontSize -> 48, FontWeight -> "Plain", FontSlant -> "Plain", FontTracking -> "Plain", FontVariations -> { "Masked" -> False, "Outline" -> False, "Shadow" -> False, "StrikeThrough" -> False, "Underline" -> False}, FontColor -> RGBColor[ 0.8156862745098039, 0.07058823529411765, 0.07058823529411765], Background -> None], Cell[ StyleData["Title", "Presentation", StyleDefinitions -> None], LineSpacing -> {1, 5}, FontSize -> 28], Cell[ StyleData[ "Title", "SlideShow", StyleDefinitions -> StyleData["Title", "Presentation"]], CellMargins -> {{55, 3}, {14, 45}}, FontSize -> 55], Cell[ StyleData["Title", "Printout", StyleDefinitions -> None], CellMargins -> {{2, 0}, {0, 10}}, LineSpacing -> {1, 18}, FontSize -> 15]}, Open]], Cell[ CellGroupData[{ Cell[ StyleData["Subtitle"], ShowCellBracket -> False, CellMargins -> {{58, 0}, {0, 5}}, CellBracketOptions -> {"Margins" -> {0, 0}}, CellGroupingRules -> {"TitleGrouping", 10}, PageBreakBelow -> False, DefaultNewInlineCellStyle -> "None", InputAutoReplacements -> {"TeX" -> StyleBox[ RowBox[{"T", AdjustmentBox[ "E", BoxMargins -> {{-0.075, -0.085}, {0, 0}}, BoxBaselineShift -> 0.5], "X"}]], "LaTeX" -> StyleBox[ RowBox[{"L", StyleBox[ AdjustmentBox[ "A", BoxMargins -> {{-0.36, -0.1}, {0, 0}}, BoxBaselineShift -> -0.2], FontSize -> Smaller], "T", AdjustmentBox[ "E", BoxMargins -> {{-0.075, -0.085}, {0, 0}}, BoxBaselineShift -> 0.5], "X"}]], "mma" -> "Mathematica", "Mma" -> "Mathematica", "MMA" -> "Mathematica", "gridMathematica" -> FormBox[ RowBox[{"grid", AdjustmentBox[ StyleBox["Mathematica", FontSlant -> "Italic"], BoxMargins -> {{-0.175, 0}, {0, 0}}]}], TextForm], "webMathematica" -> FormBox[ RowBox[{"web", AdjustmentBox[ StyleBox["Mathematica", FontSlant -> "Italic"], BoxMargins -> {{-0.175, 0}, {0, 0}}]}], TextForm], Inherited}, TextAlignment -> Left, LanguageCategory -> "NaturalLanguage", CounterIncrements -> "Subtitle", CounterAssignments -> {{"Section", 0}, {"Equation", 0}, { "Figure", 0}, {"Subsubtitle", 0}}, FontFamily -> "Helvetica", FontSize -> 20, FontWeight -> "Plain", FontSlant -> "Plain", FontColor -> RGBColor[ 0.34901960784313724`, 0.5254901960784314, 0.5176470588235295], Background -> None], Cell[ StyleData["Subtitle", "Presentation", StyleDefinitions -> None], CellMargins -> {{58, 0}, {0, 5}}, FontSize -> 20], Cell[ StyleData[ "Subtitle", "SlideShow", StyleDefinitions -> StyleData["Subtitle", "Presentation"]]], Cell[ StyleData["Subtitle", "Printout", StyleDefinitions -> None], CellMargins -> {{2, 0}, {0, 5}}, FontSize -> 14, Background -> GrayLevel[1]]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData["Subsubtitle", StyleDefinitions -> StyleData["Subtitle"]], FontSize -> Inherited + 3], Cell[ StyleData["Subsubtitle", "Presentation"], FontSize -> Inherited + 3], Cell[ StyleData[ "Subsubtitle", "SlideShow", StyleDefinitions -> StyleData["Subsubtitle", "Presentation"]]], Cell[ StyleData["Subsubtitle", "Printout"], FontSize -> Inherited + 0]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData["Section"], CellFrame -> {{0, 0}, {0.2, 0}}, ShowGroupOpener -> False, CellMargins -> {{58, 50}, {10, 20}}, FontSize -> 36, FontWeight -> "Plain", FontColor -> RGBColor[ 0.8156862745098039, 0.07058823529411765, 0.07058823529411765]], Cell[ StyleData["Section", "Presentation"], CellFrame -> {{0, 0}, {0.2, 0}}, CellMargins -> {{58, 50}, {10, 40}}], Cell[ StyleData[ "Section", "SlideShow", StyleDefinitions -> StyleData["Section", "Presentation"]], CellMargins -> {{58, 50}, {10, 10}}], Cell[ StyleData["Section", "Printout"], ShowGroupOpener -> False, CellMargins -> {{2, 0}, {7, 22}}, FontSize -> 14]}, Open]], Cell[ CellGroupData[{ Cell[ StyleData["Subsection"], CellDingbat -> None, ShowGroupOpener -> True, CellMargins -> {{60, Inherited}, {0, 12}}, CellGroupingRules -> {"SectionGrouping", 40}, PageBreakBelow -> False, DefaultNewInlineCellStyle -> "None", InputAutoReplacements -> {"TeX" -> StyleBox[ RowBox[{"T", AdjustmentBox[ "E", BoxMargins -> {{-0.075, -0.085}, {0, 0}}, BoxBaselineShift -> 0.5], "X"}]], "LaTeX" -> StyleBox[ RowBox[{"L", StyleBox[ AdjustmentBox[ "A", BoxMargins -> {{-0.36, -0.1}, {0, 0}}, BoxBaselineShift -> -0.2], FontSize -> Smaller], "T", AdjustmentBox[ "E", BoxMargins -> {{-0.075, -0.085}, {0, 0}}, BoxBaselineShift -> 0.5], "X"}]], "mma" -> "Mathematica", "Mma" -> "Mathematica", "MMA" -> "Mathematica", "gridMathematica" -> FormBox[ RowBox[{"grid", AdjustmentBox[ StyleBox["Mathematica", FontSlant -> "Italic"], BoxMargins -> {{-0.175, 0}, {0, 0}}]}], TextForm], "webMathematica" -> FormBox[ RowBox[{"web", AdjustmentBox[ StyleBox["Mathematica", FontSlant -> "Italic"], BoxMargins -> {{-0.175, 0}, {0, 0}}]}], TextForm], Inherited}, LanguageCategory -> "NaturalLanguage", CounterIncrements -> "Subsection", CounterAssignments -> {{"Subsubsection", 0}}, FontFamily -> "Helvetica", FontSize -> 24, FontWeight -> "Plain", FontSlant -> "Plain", FontColor -> RGBColor[ 0.34901960784313724`, 0.5254901960784314, 0.5176470588235295]], Cell[ StyleData["Subsection", "Presentation"], CellMargins -> {{60, 50}, {6, 15}}, LineSpacing -> {1, 0}, FontFamily -> "Helvetica"], Cell[ StyleData["Subsection", "SlideShow"], CellMargins -> {{60, 50}, {8, 12}}, LineSpacing -> {1, 0}, FontFamily -> "Helvetica"], Cell[ StyleData["Subsection", "Printout"], ShowGroupOpener -> False, CellMargins -> {{2, 0}, {2, 22}}, FontSize -> 12]}, Open]], Cell[ CellGroupData[{ Cell[ StyleData["Subsubsection"], CellDingbat -> None, ShowGroupOpener -> True, CellMargins -> {{60, Inherited}, {0, 12}}, CellGroupingRules -> {"SectionGrouping", 50}, PageBreakBelow -> False, DefaultNewInlineCellStyle -> "None", InputAutoReplacements -> {"TeX" -> StyleBox[ RowBox[{"T", AdjustmentBox[ "E", BoxMargins -> {{-0.075, -0.085}, {0, 0}}, BoxBaselineShift -> 0.5], "X"}]], "LaTeX" -> StyleBox[ RowBox[{"L", StyleBox[ AdjustmentBox[ "A", BoxMargins -> {{-0.36, -0.1}, {0, 0}}, BoxBaselineShift -> -0.2], FontSize -> Smaller], "T", AdjustmentBox[ "E", BoxMargins -> {{-0.075, -0.085}, {0, 0}}, BoxBaselineShift -> 0.5], "X"}]], "mma" -> "Mathematica", "Mma" -> "Mathematica", "MMA" -> "Mathematica", "gridMathematica" -> FormBox[ RowBox[{"grid", AdjustmentBox[ StyleBox["Mathematica", FontSlant -> "Italic"], BoxMargins -> {{-0.175, 0}, {0, 0}}]}], TextForm], "webMathematica" -> FormBox[ RowBox[{"web", AdjustmentBox[ StyleBox["Mathematica", FontSlant -> "Italic"], BoxMargins -> {{-0.175, 0}, {0, 0}}]}], TextForm], Inherited}, LanguageCategory -> "NaturalLanguage", CounterIncrements -> "Subsubsection", FontFamily -> "Helvetica", FontSize -> 24, FontWeight -> "Plain", FontSlant -> "Plain", FontColor -> RGBColor[ 0.34901960784313724`, 0.5254901960784314, 0.5176470588235295]], Cell[ StyleData["Subsubsection", "Presentation"], CellMargins -> {{60, 50}, {6, 20}}, LineSpacing -> {1, 0}], Cell[ StyleData[ "Subsubsection", "SlideShow", StyleDefinitions -> StyleData["Subsubsection", "Presentation"]]], Cell[ StyleData["Subsubsection", "Printout"], ShowGroupOpener -> False, CellMargins -> {{2, 0}, {2, 22}}, FontSize -> 11]}, Closed]]}, Open]], Cell[ CellGroupData[{ Cell["Styles for Body Text", "Section"], Cell[ CellGroupData[{ Cell["Standard", "Subsection"], Cell[ CellGroupData[{ Cell[ StyleData["Text"], CellMargins -> {{60, 10}, {7, 7}}, InputAutoReplacements -> {"TeX" -> StyleBox[ RowBox[{"T", AdjustmentBox[ "E", BoxMargins -> {{-0.075, -0.085}, {0, 0}}, BoxBaselineShift -> 0.5], "X"}]], "LaTeX" -> StyleBox[ RowBox[{"L", StyleBox[ AdjustmentBox[ "A", BoxMargins -> {{-0.36, -0.1}, {0, 0}}, BoxBaselineShift -> -0.2], FontSize -> Smaller], "T", AdjustmentBox[ "E", BoxMargins -> {{-0.075, -0.085}, {0, 0}}, BoxBaselineShift -> 0.5], "X"}]], "mma" -> "Mathematica", "Mma" -> "Mathematica", "MMA" -> "Mathematica", "gridMathematica" -> FormBox[ RowBox[{"grid", AdjustmentBox[ StyleBox["Mathematica", FontSlant -> "Italic"], BoxMargins -> {{-0.175, 0}, {0, 0}}]}], TextForm], "webMathematica" -> FormBox[ RowBox[{"web", AdjustmentBox[ StyleBox["Mathematica", FontSlant -> "Italic"], BoxMargins -> {{-0.175, 0}, {0, 0}}]}], TextForm], Inherited}, LineSpacing -> {1, 3}, CounterIncrements -> "Text", FontFamily -> "Helvetica", FontSize -> 17], Cell[ StyleData["Text", "Presentation"], CellMargins -> {{60, 50}, {10, 10}}, FontSize -> 17], Cell[ StyleData[ "Text", "SlideShow", StyleDefinitions -> StyleData["Text", "Presentation"]]], Cell[ StyleData["Text", "Printout"], CellMargins -> {{2, 2}, {6, 6}}, TextJustification -> 0.5, Hyphenation -> True, FontSize -> 10]}, Closed]]}, Open]], Cell[ CellGroupData[{ Cell["Display", "Subsection"], Cell[ CellGroupData[{ Cell[ StyleData["Item", StyleDefinitions -> StyleData["Text"]], CellDingbat -> Cell["\[FilledSmallCircle]", FontWeight -> "Bold"], CellMargins -> {{84, 10}, {7, 7}}, ReturnCreatesNewCell -> True, CellGroupingRules -> {"GroupTogetherNestedGrouping", 15000}, CounterIncrements -> "Item"], Cell[ StyleData["Item", "Presentation"], CellMargins -> {{124, 10}, {7, 7}}], Cell[ StyleData[ "Item", "SlideShow", StyleDefinitions -> StyleData["Item", "Presentation"]]], Cell[ StyleData["Item", "Printout"], CellMargins -> {{2, 2}, {0, 6}}]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData["Subitem", StyleDefinitions -> StyleData["Item"]], CellMargins -> {{108, 10}, {7, 7}}, ReturnCreatesNewCell -> True, CellGroupingRules -> {"GroupTogetherNestedGrouping", 15150}, CounterIncrements -> "Subitem"], Cell[ StyleData["Subitem", "Presentation"], CellMargins -> {{146, 10}, {7, 7}}], Cell[ StyleData[ "Subitem", "SlideShow", StyleDefinitions -> StyleData["Subitem", "Presentation"]]], Cell[ StyleData["Subitem", "Printout"], CellMargins -> {{30, 2}, {0, 6}}]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData["ItemNumbered", StyleDefinitions -> StyleData["Text"]], CellDingbat -> Cell[ TextData[{ CounterBox["ItemNumbered"], "."}]], CellMargins -> {{84, 10}, {7, 7}}, ReturnCreatesNewCell -> True, CellGroupingRules -> {"GroupTogetherNestedGrouping", 15000}, CounterIncrements -> "ItemNumbered"], Cell[ StyleData["ItemNumbered", "Presentation"], CellMargins -> {{124, 10}, {7, 7}}], Cell[ StyleData[ "ItemNumbered", "SlideShow", StyleDefinitions -> StyleData["ItemNumbered", "Presentation"]]], Cell[ StyleData["ItemNumbered", "Printout"], CellMargins -> {{2, 2}, {0, 6}}]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData[ "SubitemNumbered", StyleDefinitions -> StyleData["ItemNumbered"]], CellDingbat -> Cell[ TextData[{ CounterBox["SubitemNumbered", CounterFunction :> (Part[ CharacterRange["a", "z"], #]& )], "."}]], CellMargins -> {{108, 10}, {7, 7}}, ReturnCreatesNewCell -> True, CellGroupingRules -> {"GroupTogetherNestedGrouping", 15150}, CounterIncrements -> "SubitemNumbered"], Cell[ StyleData["SubitemNumbered", "Presentation"], CellMargins -> {{146, 10}, {7, 7}}], Cell[ StyleData[ "SubitemNumbered", "SlideShow", StyleDefinitions -> StyleData["SubitemNumbered", "Presentation"]]], Cell[ StyleData["SubitemNumbered", "Printout"], CellMargins -> {{30, 2}, {0, 6}}]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData[ "ItemParagraph", StyleDefinitions -> StyleData["Item"]], CellDingbat -> None, CellMargins -> {{84, 10}, {7, 7}}, ReturnCreatesNewCell -> True, CellGroupingRules -> {"GroupTogetherNestedGrouping", 15100}, CounterIncrements -> "ItemParagraph"], Cell[ StyleData["ItemParagraph", "Presentation"], CellMargins -> {{124, 10}, {7, 7}}], Cell[ StyleData[ "ItemParagraph", "SlideShow", StyleDefinitions -> StyleData["ItemParagraph", "Presentation"]]], Cell[ StyleData["ItemParagraph", "Printout"], CellMargins -> {{14, 2}, {0, 6}}]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData[ "SubitemParagraph", StyleDefinitions -> StyleData["Subitem"]], CellDingbat -> None, ReturnCreatesNewCell -> True, CellGroupingRules -> {"GroupTogetherNestedGrouping", 15200}, CounterIncrements -> "SubitemParagraph"], Cell[ StyleData["SubitemParagraph", "Presentation"]], Cell[ StyleData[ "SubitemParagraph", "SlideShow", StyleDefinitions -> StyleData["SubitemParagraph", "Presentation"]]], Cell[ StyleData["SubitemParagraph", "Printout"]]}, Closed]]}, Open]]}, Open]], Cell[ CellGroupData[{ Cell["Styles for Formulas and Programming", "Section"], Cell[ CellGroupData[{ Cell[ StyleData["DisplayFormula"]], Cell[ StyleData["DisplayFormula", "Presentation"], CellMargins -> {{60, Inherited}, {Inherited 1.5, Inherited 1.5}}, FontSize -> 17], Cell[ StyleData[ "DisplayFormula", "SlideShow", StyleDefinitions -> StyleData["DisplayFormula", "Presentation"]]], Cell[ StyleData["DisplayFormula", "Printout"], CellMargins -> {{39, Inherited}, {Inherited, Inherited}}, FontSize -> 10]}, Open]], Cell[ CellGroupData[{ Cell[ StyleData[ "DisplayFormulaNumbered", StyleDefinitions -> StyleData["DisplayFormula"]], CellFrameLabels -> {{None, Cell[ TextData[{"(", CounterBox["DisplayFormulaNumbered"], ")"}]]}, {None, None}}, CounterIncrements -> "DisplayFormulaNumbered"], Cell[ StyleData["DisplayFormulaNumbered", "Presentation"], CellMargins -> {{60, Inherited}, {Inherited 1.5, Inherited 1.5}}, FontSize -> 17], Cell[ StyleData[ "DisplayFormulaNumbered", "SlideShow", StyleDefinitions -> StyleData["DisplayFormulaNumbered", "Presentation"]]], Cell[ StyleData["DisplayFormulaNumbered", "Printout"], CellMargins -> {{39, Inherited}, {Inherited, Inherited}}]}, Open]]}, Open]], Cell[ CellGroupData[{ Cell["Styles for Inline Formatting", "Section"], Cell[ CellGroupData[{ Cell[ StyleData["InlineFormula"]], Cell[ StyleData["InlineFormula", "Presentation"], FontSize -> 17], Cell[ StyleData[ "InlineFormula", "SlideShow", StyleDefinitions -> StyleData["InlineFormula", "Presentation"]]], Cell[ StyleData["InlineFormula", "Printout"]]}, Closed]]}, Open]], Cell[ CellGroupData[{ Cell["Styles for Input and Output Cells", "Section"], Cell[ CellGroupData[{ Cell[ StyleData["Input"], ShowCellBracket -> True, CellMargins -> {{103, 10}, {5, 7}}, CellBracketOptions -> { "Color" -> RGBColor[0.734936, 0.713848, 0.694041]}, Evaluatable -> True, CellGroupingRules -> "InputGrouping", CellHorizontalScrolling -> True, PageBreakWithin -> False, GroupPageBreakWithin -> False, DefaultFormatType -> DefaultInputFormatType, "TwoByteSyntaxCharacterAutoReplacement" -> True, HyphenationOptions -> {"HyphenationCharacter" -> "\[Continuation]"}, AutoItalicWords -> {}, LanguageCategory -> "Mathematica", FormatType -> InputForm, ShowStringCharacters -> True, NumberMarks -> True, LinebreakAdjustments -> {0.85, 2, 10, 0, 1}, CounterIncrements -> "Input", FontWeight -> "Bold"], Cell[ StyleData["Input", "Presentation"], CellMargins -> {{110, 50}, {8, 10}}, LineSpacing -> {1, 0}, FontSize -> 17], Cell[ StyleData[ "Input", "SlideShow", StyleDefinitions -> StyleData["Input", "Presentation"]]], Cell[ StyleData["Input", "Printout"], CellMargins -> {{39, 0}, {4, 6}}, LinebreakAdjustments -> {0.85, 2, 10, 1, 1}, FontSize -> 9]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData["InputOnly"], ShowCellBracket -> True, CellMargins -> {{103, 10}, {7, 7}}, CellBracketOptions -> { "Color" -> RGBColor[0.734936, 0.713848, 0.694041]}, Evaluatable -> True, CellGroupingRules -> "InputGrouping", CellHorizontalScrolling -> True, DefaultFormatType -> DefaultInputFormatType, "TwoByteSyntaxCharacterAutoReplacement" -> True, HyphenationOptions -> {"HyphenationCharacter" -> "\[Continuation]"}, AutoItalicWords -> {}, LanguageCategory -> "Mathematica", FormatType -> InputForm, ShowStringCharacters -> True, NumberMarks -> True, LinebreakAdjustments -> {0.85, 2, 10, 0, 1}, CounterIncrements -> "Input", MenuSortingValue -> 1550, FontWeight -> "Bold"], Cell[ StyleData["InputOnly", "Presentation"], CellMargins -> {{110, Inherited}, {8, 10}}, LineSpacing -> {1, 0}, FontSize -> 17], Cell[ StyleData[ "InputOnly", "SlideShow", StyleDefinitions -> StyleData["InputOnly", "Presentation"]]], Cell[ StyleData["InputOnly", "Printout"], CellMargins -> {{39, 0}, {4, 6}}, LinebreakAdjustments -> {0.85, 2, 10, 1, 1}, FontSize -> 9]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData["Output"], ShowCellBracket -> True, CellMargins -> {{103, 10}, {7, 5}}, CellBracketOptions -> { "Color" -> RGBColor[0.734936, 0.713848, 0.694041]}, CellEditDuplicate -> True, CellGroupingRules -> "OutputGrouping", CellHorizontalScrolling -> True, PageBreakWithin -> False, GroupPageBreakWithin -> False, GeneratedCell -> True, CellAutoOverwrite -> True, DefaultFormatType -> DefaultOutputFormatType, "TwoByteSyntaxCharacterAutoReplacement" -> True, HyphenationOptions -> { "HyphenationCharacter" -> "\[Continuation]"}, AutoItalicWords -> {}, LanguageCategory -> None, FormatType -> InputForm, CounterIncrements -> "Output"], Cell[ StyleData["Output", "Presentation"], CellMargins -> {{110, 50}, {10, 8}}, LineSpacing -> {1, 0}, FontSize -> 17], Cell[ StyleData[ "Output", "SlideShow", StyleDefinitions -> StyleData["Output", "Presentation"]]], Cell[ StyleData["Output", "Printout"], CellMargins -> {{39, 0}, {6, 4}}, FontSize -> 9]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData["Code"], CellMargins -> {{103, 10}, {5, 10}}], Cell[ StyleData["Code", "Presentation"], CellMargins -> {{110, 50}, {8, 10}}, LineSpacing -> {1, 0}, FontSize -> 17], Cell[ StyleData[ "Code", "SlideShow", StyleDefinitions -> StyleData["Code", "Presentation"]]], Cell[ StyleData["Code", "Printout"], CellMargins -> {{39, 0}, {4, 6}}, LinebreakAdjustments -> {0.85, 2, 10, 1, 1}, FontSize -> 9]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData["Print"], CellMargins -> {{103, Inherited}, {Inherited, Inherited}}, FontSize -> 14], Cell[ StyleData["Print", "Presentation"], CellMargins -> {{70, Inherited}, {Inherited 1.5, Inherited 1.5}}, FontSize -> 17, Magnification -> Inherited 1.5], Cell[ StyleData[ "Print", "SlideShow", StyleDefinitions -> StyleData["Print", "Presentation"]]], Cell[ StyleData["Print", "Printout"], CellMargins -> {{39, Inherited}, {Inherited, Inherited}}]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData[ "WolframAlphaShortInput", StyleDefinitions -> StyleData["Input"]], CellMargins -> {{98, 10}, {5, 7}}, EvaluationMode -> "WolframAlphaShort", CellEventActions -> {"ReturnKeyDown" :> FrontEndTokenExecute[ EvaluationNotebook[], "HandleShiftReturn"]}, CellFrameLabels -> {{ Cell[ BoxData[ DynamicBox[ FEPrivate`FrontEndResource["WABitmaps", "Equal"]]], CellBaseline -> Baseline], None}, {None, None}}, FormatType -> TextForm, FontFamily -> "Helvetica"], Cell[ StyleData["WolframAlphaShortInput", "Presentation"], CellMargins -> {{107, 50}, {8, 10}}], Cell[ StyleData[ "WolframAlphaShortInput", "SlideShow", StyleDefinitions -> StyleData["WolframAlphaShortInput", "Presentation"]]], Cell[ StyleData["WolframAlphaShortInput", "Printout"], CellFrameLabelMargins -> 3]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData[ "WolframAlphaLong", StyleDefinitions -> StyleData["Input"]], CellMargins -> {{100, 10}, {5, 7}}, StyleKeyMapping -> { "=" -> "Input", "Backspace" -> "WolframAlphaShort"}, EvaluationMode -> "WolframAlphaLong", CellEventActions -> {"ReturnKeyDown" :> FrontEndTokenExecute[ EvaluationNotebook[], "HandleShiftReturn"]}, CellFrameLabels -> {{ Cell[ BoxData[ DynamicBox[ FEPrivate`FrontEndResource["WABitmaps", "SpikeyEqual"]]]], None}, {None, None}}, DefaultFormatType -> TextForm, FormatType -> TextForm, FontFamily -> "Helvetica"], Cell[ StyleData["WolframAlphaLong", "Presentation"], CellMargins -> {{107, 50}, {8, 10}}], Cell[ StyleData[ "WolframAlphaLong", "SlideShow", StyleDefinitions -> StyleData["WolframAlphaLong", "Presentation"]], CellMargins -> {{107, 50}, {8, 10}}], Cell[ StyleData["WolframAlphaLong", "Printout"], CellFrameLabelMargins -> 3]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData["Program"], CellMargins -> {{60, 4}, {6, 8}}], Cell[ StyleData["Program", "Presentation"], CellMargins -> {{60, 50}, {8, 10}}, LineSpacing -> {1, 0}, FontSize -> 17], Cell[ StyleData[ "Program", "SlideShow", StyleDefinitions -> StyleData["Program", "Presentation"]]], Cell[ StyleData["Program", "Printout"], FontSize -> 9]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData["CellLabel"]], Cell[ StyleData["CellLabel", "Presentation"], FontSize -> 12], Cell[ StyleData[ "CellLabel", "SlideShow", StyleDefinitions -> StyleData["CellLabel", "Presentation"]]], Cell[ StyleData["CellLabel", "Printout"], FontSize -> 8, FontColor -> GrayLevel[0.]]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData["ManipulateLabel"]], Cell[ StyleData["ManipulateLabel", "Presentation"], FontSize -> 15], Cell[ StyleData[ "ManipulateLabel", "SlideShow", StyleDefinitions -> StyleData["ManipulateLabel", "Presentation"]]], Cell[ StyleData["ManipulateLabel", "Printout"], FontSize -> 8]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData["GraphicsLabel"]], Cell[ StyleData["GraphicsLabel", "Presentation"], FontSize -> 14], Cell[ StyleData[ "GraphicsLabel", "SlideShow", StyleDefinitions -> StyleData["GraphicsLabel", "Presentation"]]], Cell[ StyleData["GraphicsLabel", "Printout"], FontSize -> 8]}, Closed]], Cell[ CellGroupData[{ Cell[ StyleData["Graphics3DLabel"]], Cell[ StyleData["Graphics3DLabel", "Presentation"], FontSize -> 14], Cell[ StyleData[ "Graphics3DLabel", "SlideShow", StyleDefinitions -> StyleData["Graphics3DLabel", "Presentation"]]], Cell[ StyleData["Graphics3DLabel", "Printout"], FontSize -> 8]}, Closed]]}, Open]], Cell[ CellGroupData[{ Cell[ "Styles for SlideShow", "Section", CellChangeTimes -> {{3.514665148412793*^9, 3.5146651505550737`*^9}}], Cell[ RawData[ "Cell[StyleData[\"slideshowheader\"],\n ShowCellBracket->False,\n \ CellMargins->{{0, 0}, {0, -2}},\n Evaluatable->False,\n \ CellHorizontalScrolling->False,\n PageBreakBelow->False,\n \ CellFrameMargins->0,\n ImageMargins->{{0, 0}, {0, 0}},\n ImageRegion->{{0, \ 1}, {0, 1}},\n Magnification->1,\n Background->GrayLevel[1],\n CellPadding -> \ 0,\n CellFramePadding -> 0]"], ShowCellBracket -> False, CellMargins -> {{0, 0}, {0, -2}}, Evaluatable -> False, CellHorizontalScrolling -> False, PageBreakBelow -> False, CellFrameMargins -> 0, ImageMargins -> {{0, 0}, {0, 0}}, ImageRegion -> {{0, 1}, {0, 1}}, Magnification -> 1, Background -> GrayLevel[1], CellPadding -> 0, CellFramePadding -> 0], Cell[ RawData[ "Cell[StyleData[\"hidefromslideshowgraphic\"],\n \ ShowCellBracket->False,\n CellMargins->{{0, 0}, {0, 0}},\n \ Evaluatable->False,\n CellHorizontalScrolling->False,\n \ PageBreakBelow->False,\n CellFrameMargins->0,\n ImageMargins->{{0, 0}, {0, \ 0}},\n ImageRegion->{{0, 1}, {0, 1}},\n Magnification->1,\n \ Background->GrayLevel[1],\n CellPadding -> 0]"], ShowCellBracket -> False, CellMargins -> {{0, 0}, {0, 0}}, Evaluatable -> False, CellHorizontalScrolling -> False, PageBreakBelow -> False, CellFrameMargins -> 0, ImageMargins -> {{0, 0}, {0, 0}}, ImageRegion -> {{0, 1}, {0, 1}}, Magnification -> 1, Background -> GrayLevel[1], CellPadding -> 0], Cell[ StyleData["hidefromslideshowgraphic", "SlideShow"], ShowCellBracket -> False, CellElementSpacings -> { "CellMinHeight" -> 0, "ClosedCellHeight" -> 0, "ClosedGroupTopMargin" -> 0}, CellOpen -> False, CellHorizontalScrolling -> False], Cell[ RawData[ "Cell[StyleData[\"slideshowheader2\"],\n ShowCellBracket->False,\n \ CellMargins->{{0, 0}, {0, 0}},\n Evaluatable->False,\n \ CellHorizontalScrolling->False,\n PageBreakBelow->False,\n ImageMargins->{{0, \ 0}, {0, 0}},\n ImageRegion->{{0, 1}, {0, 1}},\n Magnification->1,\n \ Background->GrayLevel[1]]"], ShowCellBracket -> False, CellMargins -> {{0, 0}, {0, 0}}, Evaluatable -> False, CellHorizontalScrolling -> False, PageBreakBelow -> False, ImageMargins -> {{0, 0}, {0, 0}}, ImageRegion -> {{0, 1}, {0, 1}}, Magnification -> 1, Background -> GrayLevel[1]], Cell[ StyleData["ConferenceGraphicCell", "SlideShow"], ShowCellBracket -> False, CellElementSpacings -> { "CellMinHeight" -> 0, "ClosedCellHeight" -> 0, "ClosedGroupTopMargin" -> 0}, CellOpen -> False, CellHorizontalScrolling -> True], Cell[ StyleData["slideshowheader", "Printout"], FontSize -> 8, Magnification -> 0.75], Cell[ StyleData[ "ConferenceGraphicCellSlideShowOnly", StyleDefinitions -> StyleData["ConferenceCellGraphic"]], ShowCellBracket -> False, CellMargins -> 0, CellElementSpacings -> { "CellMinHeight" -> 0, "ClosedCellHeight" -> 0, "ClosedGroupTopMargin" -> 0}, CellOpen -> False], Cell[ CellGroupData[{ Cell[ StyleData["SlideShowNavigationBar"], Editable -> True, Selectable -> False, CellFrame -> 0, ShowGroupOpener -> False, CellMargins -> {{0, 0}, {3, 3}}, CellOpen -> True, CellFrameMargins -> 0, CellFrameColor -> None, Background -> None], Cell[ StyleData["SlideShowNavigationBar", "Printout"], PageBreakAbove -> Automatic]}, Open]]}, Open]]}, Visible -> False, FrontEndVersion -> "8.0 for Mac OS X x86 (32-bit, 64-bit Kernel) (October 5, 2011)", StyleDefinitions -> "Default.nb"] ] (* End of Notebook Content *) (* Internal cache information *) (*CellTagsOutline CellTagsIndex->{ "SlideShowHeader"->{ Cell[13484, 255, 64, 1, 1, "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[19191, 389, 106, 2, 1, "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[38753, 759, 64, 1, 1, "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[45806, 965, 64, 1, 1, "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[49183, 1053, 64, 1, 1, "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[51769, 1129, 64, 1, 1, "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[54989, 1213, 64, 1, 1, "SlideShowNavigationBar", CellTags->"SlideShowHeader"]} } *) (*CellTagsIndex CellTagsIndex->{ {"SlideShowHeader", 113198, 2425} } *) (*NotebookFileOutline Notebook[{ Cell[545, 20, 10476, 176, 2, "hidefromslideshowgraphic"], Cell[CellGroupData[{ Cell[11046, 200, 470, 13, 95, "Title"], Cell[11519, 215, 317, 4, 25, "Subtitle"], Cell[11839, 221, 272, 4, 20, "Subsubtitle"], Cell[12114, 227, 1333, 23, 191, "Text"] }, Open ]], Cell[CellGroupData[{ Cell[13484, 255, 64, 1, 1, "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[CellGroupData[{ Cell[13573, 260, 169, 3, 68, "Section"], Cell[13745, 265, 1292, 24, 81, "Text"], Cell[15040, 291, 190, 4, 37, "Text"], Cell[15233, 297, 944, 15, 103, "Text"], Cell[16180, 314, 279, 7, 37, "Text"], Cell[16462, 323, 227, 4, 37, "Text"], Cell[16692, 329, 939, 16, 51, "Text"], Cell[17634, 347, 831, 13, 31, "Text"], Cell[18468, 362, 375, 12, 134, "Program"], Cell[18846, 376, 296, 7, 56, "Text"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[19191, 389, 106, 2, 1, "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[CellGroupData[{ Cell[19322, 395, 207, 3, 75, "Section"], Cell[19532, 400, 340, 6, 55, "Text"], Cell[19875, 408, 262, 5, 33, "Text"], Cell[20140, 415, 6639, 117, 85, "Text"], Cell[26782, 534, 287, 5, 33, "Text"], Cell[27072, 541, 441, 8, 55, "Text"], Cell[27516, 551, 576, 12, 79, "Text"], Cell[28095, 565, 10300, 178, 468, 1545, 33, "CachedBoxData", "BoxData", \ "Input"], Cell[38398, 745, 306, 8, 34, "Text"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[38753, 759, 64, 1, 1, "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[CellGroupData[{ Cell[38842, 764, 296, 8, 75, "Section"], Cell[39141, 774, 716, 13, 78, "Text"], Cell[CellGroupData[{ Cell[39882, 791, 154, 3, 28, "Input"], Cell[40039, 796, 2251, 64, 89, "Print"] }, Open ]], Cell[42305, 863, 215, 5, 33, "Text"], Cell[42523, 870, 170, 4, 33, "Text"], Cell[42696, 876, 207, 4, 28, "Input"], Cell[42906, 882, 200, 5, 33, "Text"], Cell[43109, 889, 321, 7, 49, "Input"], Cell[43433, 898, 211, 5, 33, "Text"], Cell[CellGroupData[{ Cell[43669, 907, 240, 5, 28, "Input"], Cell[43912, 914, 1173, 25, 123, "Output"] }, Open ]], Cell[45100, 942, 124, 2, 33, "Text"], Cell[45227, 946, 289, 6, 69, "Input"], Cell[45519, 954, 238, 5, 33, "Text"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[45806, 965, 64, 1, 1, "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[CellGroupData[{ Cell[45895, 970, 208, 3, 75, "Section"], Cell[46106, 975, 558, 11, 56, "Text"], Cell[46667, 988, 664, 14, 129, "Input"], Cell[47334, 1004, 1073, 23, 574, "Input"], Cell[48410, 1029, 283, 7, 34, "Text"], Cell[48696, 1038, 438, 9, 56, "Text"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[49183, 1053, 64, 1, 1, "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[CellGroupData[{ Cell[49272, 1058, 263, 7, 75, "Section"], Cell[49538, 1067, 511, 10, 55, "Text"], Cell[50052, 1079, 219, 4, 33, "Text"], Cell[50274, 1085, 504, 8, 77, "Text"], Cell[50781, 1095, 281, 5, 33, "Text"], Cell[CellGroupData[{ Cell[51087, 1104, 141, 3, 28, "Input"], Cell[51231, 1109, 77, 1, 27, "Output"] }, Open ]], Cell[51323, 1113, 197, 4, 33, "Text"], Cell[51523, 1119, 197, 4, 33, "Text"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[51769, 1129, 64, 1, 1, "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[CellGroupData[{ Cell[51858, 1134, 276, 4, 75, "Section"], Cell[52137, 1140, 354, 8, 56, "Text"], Cell[52494, 1150, 444, 7, 77, "Text"], Cell[52941, 1159, 421, 7, 55, "Text"], Cell[53365, 1168, 166, 4, 55, "Text"], Cell[53534, 1174, 161, 3, 28, "Input"], Cell[53698, 1179, 217, 4, 33, "Text"], Cell[53918, 1185, 490, 8, 77, "Text"], Cell[54411, 1195, 262, 5, 55, "Text"], Cell[54676, 1202, 264, 5, 55, "Text"] }, Open ]] }, Open ]], Cell[CellGroupData[{ Cell[54989, 1213, 64, 1, 1, "SlideShowNavigationBar", CellTags->"SlideShowHeader"], Cell[CellGroupData[{ Cell[55078, 1218, 326, 5, 75, "Section"], Cell[55407, 1225, 94, 1, 28, "Input"], Cell[55504, 1228, 669, 10, 77, "Text"], Cell[56176, 1240, 432, 7, 77, "Text"], Cell[56611, 1249, 693, 11, 99, "Text"] }, Open ]] }, Open ]] } ] *) (* End of internal cache information *)