(************** Content-type: application/mathematica ************** CreatedBy='Mathematica 4.2' Mathematica-Compatible Notebook This notebook can be used with any Mathematica-compatible application, such as Mathematica, MathReader or Publicon. The data for the notebook starts with the line containing stars above. To get the notebook into a Mathematica-compatible application, do one of the following: * Save the data starting with the line of stars above into a file with a name ending in .nb, then open the file inside the application; * Copy the data starting with the line of stars above to the clipboard, then use the Paste menu command inside the application. Data for notebooks contains only printable 7-bit ASCII and can be sent directly in email or through ftp in text mode. Newlines can be CR, LF or CRLF (Unix, Macintosh or MS-DOS style). NOTE: If you modify the data for this notebook not in a Mathematica- compatible application, you must delete the line below containing the word CacheID, otherwise Mathematica-compatible applications may try to use invalid cache data. For more information on notebooks and Mathematica-compatible applications, contact Wolfram Research: web: http://www.wolfram.com email: info@wolfram.com phone: +1-217-398-0700 (U.S.) Notebook reader applications are available free of charge from Wolfram Research. *******************************************************************) (*CacheID: 232*) (*NotebookFileLineBreakTest NotebookFileLineBreakTest*) (*NotebookOptionsPosition[ 16243, 446]*) (*NotebookOutlinePosition[ 55034, 1769]*) (* CellTagsIndexPosition[ 54990, 1765]*) (*WindowFrame->Normal*) Notebook[{ Cell[CellGroupData[{ Cell["GedML", "Title", TextAlignment->Center], Cell["An Applied XML Example for Use in Genealogy", "Subtitle", TextAlignment->Center], Cell[TextData[{ " Genealogy is a very popular activity given the information now \ available via the World Wide Web, home computers, and standard information \ sources such as libraries and archives. With the rising popularity of XML \ for storing data, many genealogy programs are switching to XML format to \ replace the older gedcom file format. GedML is only one of many ways to \ express gedcom data in an XML format. This format was chosen at random for \ proof of concept purposes. Information on the ", ButtonBox["DTD", ButtonData:>{ URL[ "http://users.iclway.co.uk/mhkay/gedml/dtd.html"], None}, ButtonStyle->"Hyperlink"], " for GedML is available on the web." }], "Text"], Cell["\<\ First, we need to import the GedML data. The path below will need to be \ modified to point to the file on the local system. \ \>", "Text"], Cell["\<\ DISCLAIMER: Wolfram Research, Inc. is not responsible for the data contained \ in the following file. This data is partially referenced and is a work in \ progress.\ \>", "Text"], Cell[BoxData[ \(\(data = Import["\", "\"];\)\)], "Input"], Cell[CellGroupData[{ Cell["Replacement Rules", "Subsubtitle"], Cell[BoxData[{ \(\(Off[General::spell];\)\), "\n", \(\(Off[General::spell1];\)\), "\[IndentingNewLine]", \(\(printName = XMLElement["\", {}, {fst_, XMLElement["\", {}, {last_}], ___}] \[RuleDelayed] \ \(Name \ \[Rule] ToString[fst] <> "\< \>" <> ToString[last]\);\)\), "\n", \(\(printDate = XMLElement["\", {}, {dt_}] \[RuleDelayed] \ \(EventDate \ \[Rule] ToString[dt]\);\)\), "\n", \(\(printBirth = XMLElement["\", {"\" \[Rule] "\"}, {bt___}] \ \[RuleDelayed] \ \(Birth \[Rule] {bt}\);\)\), "\n", \(\(printBurial = XMLElement["\", {"\" \[Rule] "\"}, {br___}] \ \[RuleDelayed] \ \(Burial \[Rule] {br}\);\)\), "\n", \(\(printChange = XMLElement["\", {}, {cn___}] \[RuleDelayed] \ \(Changed \ \[Rule] cn\);\)\), "\n", \(\(printDeath = XMLElement["\", {"\" \[Rule] "\"}, {dt___}] \ \[RuleDelayed] \ \(Death \[Rule] {dt}\);\)\), "\n", \(\(printMarriage = XMLElement["\", {"\" \[Rule] "\"}, {dt___}] \ \[RuleDelayed] \ \(Marriage \[Rule] {dt}\);\)\), "\n", \(\(printHusband = XMLElement["\", {ref___}, {}] \[RuleDelayed] \ \(Husband \ \[Rule] {ref}\);\)\), "\n", \(\(printWife = XMLElement["\", {ref___}, {}] \[RuleDelayed] \ \(Wife \[Rule] \ {ref}\);\)\), "\n", \(\(printChil = XMLElement["\", {ref___}, {}] \[RuleDelayed] \ \(Child \[Rule] \ {ref}\);\)\), "\n", \(\(printFamily = XMLElement["\", {ref___}, blah___] \[RuleDelayed] \ \(Family \[Rule] \ {ref, blah}\);\)\), "\n", \(\(printIndi = XMLElement["\", {"\" \[Rule] id___}, blah___] \[RuleDelayed] \ \(Individual \[Rule] {ID \[Rule] id, blah}\);\)\), "\n", \(\(printPlace = XMLElement["\", {}, {pl_}] \[RuleDelayed] \ \(Place \[Rule] pl\);\)\), "\n", \(\(noteConc = XMLElement["\", {}, cnt___] \[RuleDelayed] ToString[If[cnt \[NotEqual] {}, First[cnt], "\<\>"]];\)\), "\n", \(\(noteCont = XMLElement["\", {}, tnt___] \[RuleDelayed] ToString[If[tnt \[NotEqual] {}, First[tnt], "\<\>"]];\)\), "\n", \(\(printText = XMLElement["\", {}, {pg___}] \[RuleDelayed] ToString[pg];\)\), "\n", \(\(printSour = XMLElement["\", {ref___}, {___}] \[RuleDelayed] ToString[ref];\)\), "\n", \(\(getRef[x_] := First@Cases[data, XMLElement["\", {"\" \[Rule] x}, {XMLElement["\", {}, {cont___}], ___}] \ \[RuleDelayed] \(Notes \[Rule] {cont}\), Infinity];\)\), "\n", \(\(printNote = XMLElement["\", {}, {ntref_}] \[RuleDelayed] getRef[StringTake[ntref, {2, Length[ntref] - 2}]];\)\), "\n", \(\(printFamc = XMLElement["\", {"\" \[Rule] blah_}, {___}] \[RuleDelayed] \(Famc \[Rule] blah\);\)\), "\[IndentingNewLine]", \(\(printFams = XMLElement["\", {"\" \[Rule] blah_}, {___}] \[RuleDelayed] \(Fams \[Rule] blah\);\)\), "\[IndentingNewLine]", \(\(getSourRef[x_] := Module[{temp}, temp = Cases[data, XMLElement["\", {"\" \[Rule] x}, {XMLElement["\", {}, {cont___}], ___}] \ \[RuleDelayed] \(SourceRef \[Rule] {cont}\), Infinity]; If[Length[temp] \[NotEqual] 0, First@temp]];\)\), "\[IndentingNewLine]", \(\(printSourRef = XMLElement["\", {"\" \[Rule] idref_}, ___] \[RuleDelayed] getSourRef[idref];\)\), "\[IndentingNewLine]", \(\(getFamRef[x_] := Module[{temp}, temp = Cases[data, XMLElement["\", {"\" \[Rule] x}, cont___] \[RuleDelayed] \(FamRef \[Rule] cont\), Infinity]; If[Length[temp] \[NotEqual] 0, First@temp]];\)\), "\[IndentingNewLine]", \(\(printFamRef = XMLElement["\", {"\" \[Rule] idref_}, ___] \[RuleDelayed] getFamRef[idref];\)\), "\[IndentingNewLine]", \(\)}], "Input", InitializationCell->True] }, Closed]], Cell[CellGroupData[{ Cell["Retrieving Functions", "Subsubtitle"], Cell[BoxData[ \(\(NumberOfIndividuals[x_] := Length[Cases[x, XMLElement["\", {id_}, _], Infinity]];\)\)], "Input", InitializationCell->True], Cell["\<\ To make results more presentable, we can apply the defined replacement rules \ to \"tidy-up\" the results with the following function. This function should \ only be applied as a last step. The other search functions are not written \ to work with \"tidied-up\" results.\ \>", "Text"], Cell[BoxData[ \(\(Tidy[ x_] := \(\(\(\(\(\(\(\(\(\(\(\(\(\(\(\(\(\(\(x /. printName\) /. printBirth\) /. printDate\) /. printPlace\) /. printHusband\) /. printWife\) /. printChil\) /. printMarriage\) /. printDeath\) /. printBurial\) /. printChange\) /. printIndi\) /. printNote\) /. printSourRef\) /. printFamc\) /. printFams\) /. printFamRef\) /. printText\) /. noteCont\) /. noteConc;\)\)], "Input", InitializationCell->True], Cell[BoxData[ \(\(getNames[x_] := Map[\((ToString[Part[#, 3, 1]] <> "\< \>" <> ToString[Part[#, 3, 2, 3, 1]])\) &, Cases[x, XMLElement["\", ___], Infinity]];\)\)], "Input", InitializationCell->True], Cell[BoxData[ \(\(getNames[x_, {surname_, givenname_}] := Map[List, Cases[x, XMLElement["\", ___, {XMLElement["\", {}, \ {givenname, XMLElement["\", {}, {surname}, ___], ___}, ___], ___}], Infinity]];\)\)], "Input", InitializationCell->True], Cell[BoxData[ \(\(getBirthDate[x_, birthdate_] := Module[{temp1, temp2}, temp1 = Cases[x, XMLElement["\", {_}, {___, XMLElement["\", {"\" \[Rule] "\"}, \ {XMLElement["\", {}, {bd_}], ___}, ___], ___}] \[RuleDelayed] bd, Infinity]; temp2 = Select[ temp1, \((StringPosition[#, birthdate] \[NotEqual] \ {})\) &]; Cases[x, XMLElement["\", {_}, {___, XMLElement["\", {"\" \[Rule] "\"}, \ {XMLElement["\", {}, temp2], ___}, ___], ___}], Infinity]];\)\)], "Input", InitializationCell->True], Cell[BoxData[ \(\(getFamily[x_] := Cases[data, XMLElement["\", {"\" \[Rule] x}, ___], Infinity];\)\)], "Input", InitializationCell->True], Cell[BoxData[ \(\(getIndividual[x_] := Cases[data, \ XMLElement["\", {"\" \[Rule] x}, ___], Infinity];\)\)], "Input", InitializationCell->True], Cell[BoxData[ \(\(getWife[indi_] := Module[{temp1}, temp1 = getFamily[indi]; temp2 = Cases[temp1, XMLElement["\", ___, {}], Infinity]; getIndividual["\" /. temp2[\([1, 2]\)]]];\)\)], "Input", InitializationCell->True], Cell[BoxData[ \(\(getChildren[indi_] := Module[{temp1}, temp1 = getFamily[indi]; temp2 = Cases[temp1, XMLElement["\", {"\" \[Rule] id_}, {}] \[RuleDelayed] id, Infinity]; Map[getIndividual, temp2]];\)\)], "Input", InitializationCell->True], Cell[BoxData[ \(\(getBirthSpan[x_] := Module[{temp}, temp = Map[\((Flatten[{getNames[#], Cases[#, XMLElement["\", {_}, {___, XMLElement["\", {"\" \[Rule] \ "\"}, {XMLElement["\", {}, {birthdate_}], ___}, ___], ___}] \ \[RuleDelayed] StringTake[birthdate, \(-4\)], Infinity], Cases[#, XMLElement["\", {_}, {___, XMLElement["\", {"\" \[Rule] \ "\"}, {XMLElement["\", {}, {deathdate_}], ___}, ___], ___}] \ \[RuleDelayed] StringTake[deathdate, \(-4\)], Infinity]}])\) &, x]; Select[temp, Length[#] \[Equal] 3 &]];\)\)], "Input", InitializationCell->True], Cell[BoxData[ \(\(lifeRangePlot[x_, opts___] := Module[{size}, size = Length[x]; Show[Graphics[ Map[{{RGBColor[1, 0, 0], Rectangle[ Flatten[{ToExpression[#[\([2]\)]], Position[x, #] - 1/size}], Flatten[{ToExpression[#[\([3]\)]], 1/size + Position[x, #]}]]}, Text[#[\([1]\)], Flatten[{ToExpression[#[\([3]\)]], \((\((Position[ x, #] - 1/size)\) + \((1/size + Position[x, #])\))\)/2}], {\(-1\), 0}]} &, x]], opts, Axes \[Rule] False, Frame \[Rule] {True, False, True, False}, PlotLabel -> "\", PlotRange \[Rule] All, TextStyle \[Rule] {FontFamily -> "\", FontWeight -> "\"}, ImageSize \[Rule] 500]];\)\)], "Input", InitializationCell->True] }, Closed]], Cell[CellGroupData[{ Cell["Examples", "Subsubtitle"], Cell["\<\ This function finds the number of individuals in a given GedML data set.\ \>", "Text"], Cell[BoxData[ \(NumberOfIndividuals[data]\)], "Input"], Cell["\<\ We can get the names of all of the individuals using the following \ function.\ \>", "Text"], Cell[BoxData[ \(getNames[data]\)], "Input"], Cell["\<\ We can also define a function to search for a specified name.\ \>", "Text"], Cell[BoxData[ \(\(mynames = getNames[data, {"\", "\"}];\)\)], "Input"], Cell[TextData[{ "The ", StyleBox["Tidy[]", FontFamily->"Courier New"], " function can be used to format the search results as ", StyleBox["Mathematica", FontSlant->"Italic"], " rules rather than as lists of ", StyleBox["XMLElement", FontFamily->"Courier New"], "s. This function should only be used for display purposes. Attempting to \ use the results of ", StyleBox["Tidy[]", FontFamily->"Courier New"], " in conjunction with other search functions will result in failed search \ attempts." }], "Text"], Cell[BoxData[ \(Tidy[mynames]\)], "Input"], Cell["\<\ Searching for individuals with a specified birth date is also useful.\ \>", "Text"], Cell[BoxData[ \(Tidy[getBirthDate[mynames, "\<1729\>"]]\)], "Input"], Cell[TextData[{ "As the examples above show, there are often references to other elements, \ such as family references. The ", StyleBox["getFamily[]", FontFamily->"Courier New"], " function takes this reference and returns the appropriate family record." }], "Text"], Cell[BoxData[ \(Tidy[\(getFamily["\"]\)[\([1, 3]\)]]\)], "Input"], Cell[TextData[{ "Similarly, the ", StyleBox["getIndividual[]", FontFamily->"Courier New"], " function takes an individual reference and returns the corresponding \ individual record." }], "Text"], Cell[BoxData[ \(Tidy[getIndividual["\"]]\)], "Input"], Cell[TextData[{ "The ", StyleBox["getWife[]", FontFamily->"Courier New"], " function takes a family reference as an argument and returns the \ individual that matches the \"WIFE\" descriptor." }], "Text"], Cell[BoxData[ \(Tidy[getWife["\"]]\)], "Input"], Cell[TextData[{ "Similarly, ", StyleBox["getChildren[]", FontFamily->"Courier New"], " takes a family reference as an argument and returns the individuals that \ match the \"CHIL\" descriptor." }], "Text"], Cell[BoxData[ \(\(mykids = getChildren["\"];\)\)], "Input"], Cell[TextData[{ "Once the children have been extracted, it is useful to compare the life \ range for those children in order to graphically see which ones were born \ first or last, and similarly when each individual died. The first step is to \ extract the necessary information, which is done via the ", StyleBox["getBirthSpan[ ]", FontFamily->"Courier New"], " function. Only those individuals that have known names, birth dates, and \ death dates are included in the results." }], "Text"], Cell[BoxData[ \(mydat = getBirthSpan[mykids]\)], "Input"], Cell[TextData[{ "This information can be plotted graphically using the ", StyleBox["lifeRangePlot[]", FontFamily->"Courier New"], " function." }], "Text"], Cell[BoxData[ \(\(lifeRangePlot[mydat];\)\)], "Input"] }, Open ]] }, Open ]] }, FrontEndVersion->"4.2 for Microsoft Windows", ScreenRectangle->{{0, 1024}, {0, 695}}, AutoGeneratedPackage->None, WindowSize->{1016, 668}, WindowMargins->{{0, Automatic}, {Automatic, 0}}, PrintingCopies->1, PrintingPageRange->{Automatic, Automatic}, StyleDefinitions -> Notebook[{ Cell[CellGroupData[{ Cell["Style Definitions", "Subtitle"], Cell["\<\ Modify the definitions below to change the default appearance of all cells in \ a given style. Make modifications to any definition using commands in the \ Format menu.\ \>", "Text"], Cell[CellGroupData[{ Cell["Style Environment Names", "Section"], Cell[StyleData[All, "Working"], PageWidth->WindowWidth, CellLabelMargins->{{12, Inherited}, {Inherited, Inherited}}, ScriptMinSize->9], Cell[StyleData[All, "Presentation"], PageWidth->WindowWidth, CellLabelMargins->{{24, Inherited}, {Inherited, Inherited}}, ScriptMinSize->12], Cell[StyleData[All, "Condensed"], PageWidth->WindowWidth, CellLabelMargins->{{8, Inherited}, {Inherited, Inherited}}, ScriptMinSize->8], Cell[StyleData[All, "Printout"], PageWidth->PaperWidth, CellLabelMargins->{{2, Inherited}, {Inherited, Inherited}}, ScriptMinSize->5, PrivateFontOptions->{"FontType"->"Outline"}] }, Closed]], Cell[CellGroupData[{ Cell["Notebook Options", "Section"], Cell["\<\ The options defined for the style below will be used at the Notebook level.\ \>", "Text"], Cell[StyleData["Notebook"], PageHeaders->{{Cell[ TextData[ { CounterBox[ "Page"]}], "PageNumber"], None, Cell[ TextData[ { ValueBox[ "FileName"]}], "Header"]}, {Cell[ TextData[ { ValueBox[ "FileName"]}], "Header"], None, Cell[ TextData[ { CounterBox[ "Page"]}], "PageNumber"]}}, CellFrameLabelMargins->6, StyleMenuListing->None, Background->RGBColor[1, 0.900008, 0.700008]] }, Open ]], Cell[CellGroupData[{ Cell["Styles for Headings", "Section"], Cell[CellGroupData[{ Cell[StyleData["Title"], CellMargins->{{0, 0}, {0, 0}}, CellGroupingRules->{"TitleGrouping", 0}, 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", Inherited}, LineSpacing->{1, 11}, LanguageCategory->"NaturalLanguage", CounterIncrements->"Title", CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}, { "Subtitle", 0}, {"Subsubtitle", 0}}, FontFamily->"Times", FontSize->36, FontWeight->"Bold", FontColor->GrayLevel[0.900008], Background->RGBColor[0.2, 0.2, 0.700008]], Cell[StyleData["Title", "Presentation"], CellMargins->{{24, 10}, {20, 40}}, LineSpacing->{1, 0}, FontSize->44], Cell[StyleData["Title", "Condensed"], CellMargins->{{8, 10}, {4, 8}}, FontSize->20], Cell[StyleData["Title", "Printout"], CellMargins->{{0, 0}, {0, 0}}, FontSize->24] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Subtitle"], CellMargins->{{0, 0}, {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", Inherited}, LanguageCategory->"NaturalLanguage", CounterIncrements->"Subtitle", CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}, { "Subsubtitle", 0}}, FontFamily->"Helvetica", FontSize->18, FontColor->GrayLevel[0.900008], Background->GrayLevel[0]], Cell[StyleData["Subtitle", "Presentation"], CellMargins->{{24, 10}, {20, 20}}, LineSpacing->{1, 0}, FontSize->36], Cell[StyleData["Subtitle", "Condensed"], CellMargins->{{8, 10}, {4, 4}}, FontSize->14], Cell[StyleData["Subtitle", "Printout"], CellMargins->{{0, 0}, {0, 0}}, FontSize->18] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Subsubtitle"], CellMargins->{{12, Inherited}, {20, 15}}, CellGroupingRules->{"TitleGrouping", 20}, 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", Inherited}, LanguageCategory->"NaturalLanguage", CounterIncrements->"Subsubtitle", CounterAssignments->{{"Section", 0}, {"Equation", 0}, {"Figure", 0}}, FontFamily->"Helvetica", FontSize->14, FontSlant->"Italic"], Cell[StyleData["Subsubtitle", "Presentation"], CellMargins->{{24, 10}, {20, 20}}, LineSpacing->{1, 0}, FontSize->24], Cell[StyleData["Subsubtitle", "Condensed"], CellMargins->{{8, 10}, {8, 8}}, FontSize->12], Cell[StyleData["Subsubtitle", "Printout"], CellMargins->{{2, 10}, {12, 8}}, FontSize->14] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Section"], CellMargins->{{25, Inherited}, {8, 24}}, CellGroupingRules->{"SectionGrouping", 30}, 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", Inherited}, LineSpacing->{1, 7}, LanguageCategory->"NaturalLanguage", CounterIncrements->"Section", CounterAssignments->{{"Subsection", 0}, {"Subsubsection", 0}}, FontFamily->"Helvetica", FontSize->16, FontWeight->"Bold"], Cell[StyleData["Section", "Presentation"], CellMargins->{{40, 10}, {11, 32}}, LineSpacing->{1, 0}, FontSize->24], Cell[StyleData["Section", "Condensed"], CellMargins->{{18, Inherited}, {6, 12}}, FontSize->12], Cell[StyleData["Section", "Printout"], CellMargins->{{13, 0}, {7, 22}}, FontSize->14] }, Open ]], Cell[CellGroupData[{ Cell[StyleData["Subsection"], CellDingbat->"\[FilledSmallSquare]", CellMargins->{{22, Inherited}, {8, 20}}, 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", Inherited}, LanguageCategory->"NaturalLanguage", CounterIncrements->"Subsection", CounterAssignments->{{"Subsubsection", 0}}, FontFamily->"Times", FontSize->14, FontWeight->"Bold"], Cell[StyleData["Subsection", "Presentation"], CellMargins->{{36, 10}, {11, 32}}, LineSpacing->{1, 0}, FontSize->22], Cell[StyleData["Subsection", "Condensed"], CellMargins->{{16, Inherited}, {6, 12}}, FontSize->12], Cell[StyleData["Subsection", "Printout"], CellMargins->{{9, 0}, {7, 22}}, FontSize->12] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Subsubsection"], CellDingbat->"\[FilledSmallSquare]", CellMargins->{{22, Inherited}, {8, 18}}, 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", Inherited}, LanguageCategory->"NaturalLanguage", CounterIncrements->"Subsubsection", FontFamily->"Times", FontWeight->"Bold"], Cell[StyleData["Subsubsection", "Presentation"], CellMargins->{{34, 10}, {11, 26}}, LineSpacing->{1, 0}, FontSize->18], Cell[StyleData["Subsubsection", "Condensed"], CellMargins->{{17, Inherited}, {6, 12}}, FontSize->10], Cell[StyleData["Subsubsection", "Printout"], CellMargins->{{9, 0}, {7, 14}}, FontSize->11] }, Closed]] }, Open ]], Cell[CellGroupData[{ Cell["Styles for Body Text", "Section"], Cell[CellGroupData[{ Cell[StyleData["Text"], CellMargins->{{12, 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", Inherited}, Hyphenation->True, LineSpacing->{1, 3}, CounterIncrements->"Text"], Cell[StyleData["Text", "Presentation"], CellMargins->{{24, 10}, {10, 10}}, LineSpacing->{1, 5}, FontSize->16], Cell[StyleData["Text", "Condensed"], CellMargins->{{8, 10}, {6, 6}}, LineSpacing->{1, 1}, FontSize->11], Cell[StyleData["Text", "Printout"], CellMargins->{{2, 2}, {6, 6}}, TextJustification->0.5, FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["SmallText"], CellMargins->{{12, 10}, {6, 6}}, DefaultNewInlineCellStyle->"None", Hyphenation->True, LineSpacing->{1, 3}, LanguageCategory->"NaturalLanguage", CounterIncrements->"SmallText", FontFamily->"Helvetica", FontSize->9], Cell[StyleData["SmallText", "Presentation"], CellMargins->{{24, 10}, {8, 8}}, LineSpacing->{1, 5}, FontSize->12], Cell[StyleData["SmallText", "Condensed"], CellMargins->{{8, 10}, {5, 5}}, LineSpacing->{1, 2}, FontSize->9], Cell[StyleData["SmallText", "Printout"], CellMargins->{{2, 2}, {5, 5}}, TextJustification->0.5, FontSize->7] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Styles for Input/Output", "Section"], Cell["\<\ The cells in this section define styles used for input and output to the \ kernel. Be careful when modifying, renaming, or removing these styles, \ because the front end associates special meanings with these style names. \ Some attributes for these styles are actually set in FormatType Styles (in \ the last section of this stylesheet). \ \>", "Text"], Cell[CellGroupData[{ Cell[StyleData["Input"], CellMargins->{{45, 10}, {5, 7}}, 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->{{72, Inherited}, {8, 10}}, LineSpacing->{1, 0}, FontSize->16], Cell[StyleData["Input", "Condensed"], CellMargins->{{40, 10}, {2, 3}}, FontSize->11], Cell[StyleData["Input", "Printout"], CellMargins->{{39, 0}, {4, 6}}, LinebreakAdjustments->{0.85, 2, 10, 1, 1}, FontSize->9] }, Closed]], Cell[StyleData["InputOnly"], 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", StyleMenuListing->None, FontWeight->"Bold"], Cell[CellGroupData[{ Cell[StyleData["Output"], CellMargins->{{47, 10}, {7, 5}}, 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->{{72, Inherited}, {10, 8}}, LineSpacing->{1, 0}, FontSize->16], Cell[StyleData["Output", "Condensed"], CellMargins->{{41, Inherited}, {3, 2}}, FontSize->11], Cell[StyleData["Output", "Printout"], CellMargins->{{39, 0}, {6, 4}}, FontSize->9] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Message"], CellMargins->{{45, Inherited}, {Inherited, Inherited}}, CellGroupingRules->"OutputGrouping", PageBreakWithin->False, GroupPageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, ShowCellLabel->False, DefaultFormatType->DefaultOutputFormatType, "TwoByteSyntaxCharacterAutoReplacement"->True, HyphenationOptions->{"HyphenationCharacter"->"\[Continuation]"}, AutoItalicWords->{}, LanguageCategory->None, FormatType->InputForm, CounterIncrements->"Message", StyleMenuListing->None, FontSize->11, FontColor->RGBColor[0, 0, 1]], Cell[StyleData["Message", "Presentation"], CellMargins->{{72, Inherited}, {Inherited, Inherited}}, LineSpacing->{1, 0}, FontSize->16], Cell[StyleData["Message", "Condensed"], CellMargins->{{41, Inherited}, {Inherited, Inherited}}, FontSize->11], Cell[StyleData["Message", "Printout"], CellMargins->{{39, Inherited}, {Inherited, Inherited}}, FontSize->7, FontColor->GrayLevel[0]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Print"], CellMargins->{{45, Inherited}, {Inherited, Inherited}}, CellGroupingRules->"OutputGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GroupPageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, ShowCellLabel->False, DefaultFormatType->DefaultOutputFormatType, "TwoByteSyntaxCharacterAutoReplacement"->True, HyphenationOptions->{"HyphenationCharacter"->"\[Continuation]"}, AutoItalicWords->{}, LanguageCategory->None, FormatType->InputForm, CounterIncrements->"Print", StyleMenuListing->None], Cell[StyleData["Print", "Presentation"], CellMargins->{{72, Inherited}, {Inherited, Inherited}}, LineSpacing->{1, 0}, FontSize->16], Cell[StyleData["Print", "Condensed"], CellMargins->{{41, Inherited}, {Inherited, Inherited}}, FontSize->11], Cell[StyleData["Print", "Printout"], CellMargins->{{39, Inherited}, {Inherited, Inherited}}, FontSize->8] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Graphics"], CellMargins->{{4, Inherited}, {Inherited, Inherited}}, CellGroupingRules->"GraphicsGrouping", CellHorizontalScrolling->True, PageBreakWithin->False, GeneratedCell->True, CellAutoOverwrite->True, ShowCellLabel->False, DefaultFormatType->DefaultOutputFormatType, LanguageCategory->None, FormatType->InputForm, CounterIncrements->"Graphics", ImageMargins->{{43, Inherited}, {Inherited, 0}}, StyleMenuListing->None, FontFamily->"Courier", FontSize->10], Cell[StyleData["Graphics", "Presentation"], ImageMargins->{{62, Inherited}, {Inherited, 0}}], Cell[StyleData["Graphics", "Condensed"], ImageMargins->{{38, Inherited}, {Inherited, 0}}, Magnification->0.6], Cell[StyleData["Graphics", "Printout"], ImageMargins->{{30, Inherited}, {Inherited, 0}}, Magnification->0.8] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["CellLabel"], LanguageCategory->None, StyleMenuListing->None, FontFamily->"Helvetica", FontSize->9, FontColor->RGBColor[0, 0, 1]], Cell[StyleData["CellLabel", "Presentation"], FontSize->12], Cell[StyleData["CellLabel", "Condensed"], FontSize->9], Cell[StyleData["CellLabel", "Printout"], FontFamily->"Courier", FontSize->8, FontSlant->"Italic", FontColor->GrayLevel[0]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["FrameLabel"], LanguageCategory->None, StyleMenuListing->None, FontFamily->"Helvetica", FontSize->9], Cell[StyleData["FrameLabel", "Presentation"], FontSize->12], Cell[StyleData["FrameLabel", "Condensed"], FontSize->9], Cell[StyleData["FrameLabel", "Printout"], FontFamily->"Courier", FontSize->8, FontSlant->"Italic", FontColor->GrayLevel[0]] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Inline Formatting", "Section"], Cell["\<\ These styles are for modifying individual words or letters in a cell \ exclusive of the cell tag.\ \>", "Text"], Cell[StyleData["RM"], StyleMenuListing->None, FontWeight->"Plain", FontSlant->"Plain"], Cell[StyleData["BF"], StyleMenuListing->None, FontWeight->"Bold"], Cell[StyleData["IT"], StyleMenuListing->None, FontSlant->"Italic"], Cell[StyleData["TR"], StyleMenuListing->None, FontFamily->"Times", FontWeight->"Plain", FontSlant->"Plain"], Cell[StyleData["TI"], StyleMenuListing->None, FontFamily->"Times", FontWeight->"Plain", FontSlant->"Italic"], Cell[StyleData["TB"], StyleMenuListing->None, FontFamily->"Times", FontWeight->"Bold", FontSlant->"Plain"], Cell[StyleData["TBI"], StyleMenuListing->None, FontFamily->"Times", FontWeight->"Bold", FontSlant->"Italic"], Cell[StyleData["MR"], "TwoByteSyntaxCharacterAutoReplacement"->True, HyphenationOptions->{"HyphenationCharacter"->"\[Continuation]"}, StyleMenuListing->None, FontFamily->"Courier", FontWeight->"Plain", FontSlant->"Plain"], Cell[StyleData["MO"], "TwoByteSyntaxCharacterAutoReplacement"->True, HyphenationOptions->{"HyphenationCharacter"->"\[Continuation]"}, StyleMenuListing->None, FontFamily->"Courier", FontWeight->"Plain", FontSlant->"Italic"], Cell[StyleData["MB"], "TwoByteSyntaxCharacterAutoReplacement"->True, HyphenationOptions->{"HyphenationCharacter"->"\[Continuation]"}, StyleMenuListing->None, FontFamily->"Courier", FontWeight->"Bold", FontSlant->"Plain"], Cell[StyleData["MBO"], "TwoByteSyntaxCharacterAutoReplacement"->True, HyphenationOptions->{"HyphenationCharacter"->"\[Continuation]"}, StyleMenuListing->None, FontFamily->"Courier", FontWeight->"Bold", FontSlant->"Italic"], Cell[StyleData["SR"], StyleMenuListing->None, FontFamily->"Helvetica", FontWeight->"Plain", FontSlant->"Plain"], Cell[StyleData["SO"], StyleMenuListing->None, FontFamily->"Helvetica", FontWeight->"Plain", FontSlant->"Italic"], Cell[StyleData["SB"], StyleMenuListing->None, FontFamily->"Helvetica", FontWeight->"Bold", FontSlant->"Plain"], Cell[StyleData["SBO"], StyleMenuListing->None, FontFamily->"Helvetica", FontWeight->"Bold", FontSlant->"Italic"], Cell[CellGroupData[{ Cell[StyleData["SO10"], StyleMenuListing->None, FontFamily->"Helvetica", FontSize->10, FontWeight->"Plain", FontSlant->"Italic"], Cell[StyleData["SO10", "Printout"], StyleMenuListing->None, FontFamily->"Helvetica", FontSize->7, FontWeight->"Plain", FontSlant->"Italic"], Cell[StyleData["SO10", "EnhancedPrintout"], StyleMenuListing->None, FontFamily->"Futura", FontSize->7, FontWeight->"Plain", FontSlant->"Italic"] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Formulas and Programming", "Section"], Cell[CellGroupData[{ Cell[StyleData["InlineFormula"], CellMargins->{{10, 4}, {0, 8}}, CellHorizontalScrolling->True, HyphenationOptions->{"HyphenationCharacter"->"\[Continuation]"}, LanguageCategory->"Formula", ScriptLevel->1, SingleLetterItalics->True], Cell[StyleData["InlineFormula", "Presentation"], CellMargins->{{24, 10}, {10, 10}}, LineSpacing->{1, 5}, FontSize->16], Cell[StyleData["InlineFormula", "Condensed"], CellMargins->{{8, 10}, {6, 6}}, LineSpacing->{1, 1}, FontSize->11], Cell[StyleData["InlineFormula", "Printout"], CellMargins->{{2, 0}, {6, 6}}, FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["DisplayFormula"], CellMargins->{{42, Inherited}, {Inherited, Inherited}}, CellHorizontalScrolling->True, DefaultFormatType->DefaultInputFormatType, HyphenationOptions->{"HyphenationCharacter"->"\[Continuation]"}, LanguageCategory->"Formula", ScriptLevel->0, SingleLetterItalics->True, UnderoverscriptBoxOptions->{LimitsPositioning->True}], Cell[StyleData["DisplayFormula", "Presentation"], LineSpacing->{1, 5}, FontSize->16], Cell[StyleData["DisplayFormula", "Condensed"], LineSpacing->{1, 1}, FontSize->11], Cell[StyleData["DisplayFormula", "Printout"], FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Program"], CellFrame->{{0, 0}, {0.5, 0.5}}, CellMargins->{{10, 4}, {0, 8}}, CellHorizontalScrolling->True, Hyphenation->False, LanguageCategory->"Formula", ScriptLevel->1, FontFamily->"Courier"], Cell[StyleData["Program", "Presentation"], CellMargins->{{24, 10}, {10, 10}}, LineSpacing->{1, 5}, FontSize->16], Cell[StyleData["Program", "Condensed"], CellMargins->{{8, 10}, {6, 6}}, LineSpacing->{1, 1}, FontSize->11], Cell[StyleData["Program", "Printout"], CellMargins->{{2, 0}, {6, 6}}, FontSize->9] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Outline Styles", "Section"], Cell[CellGroupData[{ Cell[StyleData["Outline1"], CellMargins->{{12, 10}, {7, 7}}, CellGroupingRules->{"SectionGrouping", 50}, ParagraphIndent->-38, CounterIncrements->"Outline1", FontSize->18, FontWeight->"Bold", CounterBoxOptions->{CounterFunction:>CapitalRomanNumeral}], Cell[StyleData["Outline1", "Printout"], CounterBoxOptions->{CounterFunction:>CapitalRomanNumeral}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Outline2"], CellMargins->{{59, 10}, {7, 7}}, CellGroupingRules->{"SectionGrouping", 60}, ParagraphIndent->-27, CounterIncrements->"Outline2", FontSize->15, FontWeight->"Bold", CounterBoxOptions->{CounterFunction:>(Part[ CharacterRange[ "A", "Z"], #]&)}], Cell[StyleData["Outline2", "Printout"], CounterBoxOptions->{CounterFunction:>(Part[ CharacterRange[ "A", "Z"], #]&)}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Outline3"], CellMargins->{{108, 10}, {7, 7}}, CellGroupingRules->{"SectionGrouping", 70}, ParagraphIndent->-21, CounterIncrements->"Outline3", FontSize->12, CounterBoxOptions->{CounterFunction:>Identity}], Cell[StyleData["Outline3", "Printout"], CounterBoxOptions->{CounterFunction:>Identity}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["Outline4"], CellMargins->{{158, 10}, {7, 7}}, CellGroupingRules->{"SectionGrouping", 80}, ParagraphIndent->-18, CounterIncrements->"Outline4", FontSize->10, CounterBoxOptions->{CounterFunction:>(Part[ CharacterRange[ "a", "z"], #]&)}], Cell[StyleData["Outline4", "Printout"]] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Hyperlink Styles", "Section"], Cell["\<\ The cells below define styles useful for making hypertext ButtonBoxes. The \ \"Hyperlink\" style is for links within the same Notebook, or between \ Notebooks.\ \>", "Text"], Cell[CellGroupData[{ Cell[StyleData["Hyperlink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->True}, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`NotebookLocate[ #2]}]&), Active->True, ButtonFrame->"None", ButtonNote->ButtonData}], Cell[StyleData["Hyperlink", "Presentation"], FontSize->16], Cell[StyleData["Hyperlink", "Condensed"], FontSize->11], Cell[StyleData["Hyperlink", "Printout"], FontSize->10, FontColor->GrayLevel[0], FontVariations->{"Underline"->False}] }, Closed]], Cell["\<\ The following styles are for linking automatically to the on-line help \ system.\ \>", "Text"], Cell[CellGroupData[{ Cell[StyleData["MainBookLink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->True}, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`HelpBrowserLookup[ "MainBook", #]}]&), Active->True, ButtonFrame->"None"}], Cell[StyleData["MainBookLink", "Presentation"], FontSize->16], Cell[StyleData["MainBookLink", "Condensed"], FontSize->11], Cell[StyleData["MainBookLink", "Printout"], FontSize->10, FontColor->GrayLevel[0], FontVariations->{"Underline"->False}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["AddOnsLink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontFamily->"Courier", FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->True}, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`HelpBrowserLookup[ "AddOns", #]}]&), Active->True, ButtonFrame->"None"}], Cell[StyleData["AddOnsLink", "Presentation"], FontSize->16], Cell[StyleData["AddOnsLink", "Condensed"], FontSize->11], Cell[StyleData["AddOnsLink", "Printout"], FontSize->10, FontColor->GrayLevel[0], FontVariations->{"Underline"->False}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["RefGuideLink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontFamily->"Courier", FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->True}, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`HelpBrowserLookup[ "RefGuide", #]}]&), Active->True, ButtonFrame->"None"}], Cell[StyleData["RefGuideLink", "Presentation"], FontSize->16], Cell[StyleData["RefGuideLink", "Condensed"], FontSize->11], Cell[StyleData["RefGuideLink", "Printout"], FontSize->10, FontColor->GrayLevel[0], FontVariations->{"Underline"->False}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["GettingStartedLink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->True}, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`HelpBrowserLookup[ "GettingStarted", #]}]&), Active->True, ButtonFrame->"None"}], Cell[StyleData["GettingStartedLink", "Presentation"], FontSize->16], Cell[StyleData["GettingStartedLink", "Condensed"], FontSize->11], Cell[StyleData["GettingStartedLink", "Printout"], FontSize->10, FontColor->GrayLevel[0], FontVariations->{"Underline"->False}] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["OtherInformationLink"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, FontColor->RGBColor[0, 0, 1], FontVariations->{"Underline"->True}, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`HelpBrowserLookup[ "OtherInformation", #]}]&), Active->True, ButtonFrame->"None"}], Cell[StyleData["OtherInformationLink", "Presentation"], FontSize->16], Cell[StyleData["OtherInformationLink", "Condensed"], FontSize->11], Cell[StyleData["OtherInformationLink", "Printout"], FontSize->10, FontColor->GrayLevel[0], FontVariations->{"Underline"->False}] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["Styles for Headers and Footers", "Section"], Cell[StyleData["Header"], CellMargins->{{0, 0}, {4, 1}}, DefaultNewInlineCellStyle->"None", LanguageCategory->"NaturalLanguage", StyleMenuListing->None, FontSize->10, FontSlant->"Italic"], Cell[StyleData["Footer"], CellMargins->{{0, 0}, {0, 4}}, DefaultNewInlineCellStyle->"None", LanguageCategory->"NaturalLanguage", StyleMenuListing->None, FontSize->9, FontSlant->"Italic"], Cell[StyleData["PageNumber"], CellMargins->{{0, 0}, {4, 1}}, StyleMenuListing->None, FontFamily->"Times", FontSize->10] }, Closed]], Cell[CellGroupData[{ Cell["Palette Styles", "Section"], Cell["\<\ The cells below define styles that define standard ButtonFunctions, for use \ in palette buttons.\ \>", "Text"], Cell[StyleData["Paste"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`NotebookApply[ FrontEnd`InputNotebook[ ], #, Placeholder]}]&)}], Cell[StyleData["Evaluate"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`NotebookApply[ FrontEnd`InputNotebook[ ], #, All], SelectionEvaluate[ FrontEnd`InputNotebook[ ], All]}]&)}], Cell[StyleData["EvaluateCell"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`NotebookApply[ FrontEnd`InputNotebook[ ], #, All], FrontEnd`SelectionMove[ FrontEnd`InputNotebook[ ], All, Cell, 1], FrontEnd`SelectionEvaluateCreateCell[ FrontEnd`InputNotebook[ ], All]}]&)}], Cell[StyleData["CopyEvaluate"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`SelectionCreateCell[ FrontEnd`InputNotebook[ ], All], FrontEnd`NotebookApply[ FrontEnd`InputNotebook[ ], #, All], FrontEnd`SelectionEvaluate[ FrontEnd`InputNotebook[ ], All]}]&)}], Cell[StyleData["CopyEvaluateCell"], StyleMenuListing->None, ButtonStyleMenuListing->Automatic, ButtonBoxOptions->{ButtonFunction:>(FrontEndExecute[ { FrontEnd`SelectionCreateCell[ FrontEnd`InputNotebook[ ], All], FrontEnd`NotebookApply[ FrontEnd`InputNotebook[ ], #, All], FrontEnd`SelectionEvaluateCreateCell[ FrontEnd`InputNotebook[ ], All]}]&)}] }, Closed]], Cell[CellGroupData[{ Cell["Placeholder Styles", "Section"], Cell["\<\ The cells below define styles useful for making placeholder objects in \ palette templates.\ \>", "Text"], Cell[CellGroupData[{ Cell[StyleData["Placeholder"], Placeholder->True, StyleMenuListing->None, FontSlant->"Italic", FontColor->RGBColor[0.890623, 0.864698, 0.384756], TagBoxOptions->{Editable->False, Selectable->False, StripWrapperBoxes->False}], Cell[StyleData["Placeholder", "Presentation"]], Cell[StyleData["Placeholder", "Condensed"]], Cell[StyleData["Placeholder", "Printout"]] }, Closed]], Cell[CellGroupData[{ Cell[StyleData["PrimaryPlaceholder"], StyleMenuListing->None, DrawHighlighted->True, FontSlant->"Italic", Background->RGBColor[0.912505, 0.891798, 0.507774], TagBoxOptions->{Editable->False, Selectable->False, StripWrapperBoxes->False}], Cell[StyleData["PrimaryPlaceholder", "Presentation"]], Cell[StyleData["PrimaryPlaceholder", "Condensed"]], Cell[StyleData["PrimaryPlaceholder", "Printout"]] }, Closed]] }, Closed]], Cell[CellGroupData[{ Cell["FormatType Styles", "Section"], Cell["\<\ The cells below define styles that are mixed in with the styles of most \ cells. If a cell's FormatType matches the name of one of the styles defined \ below, then that style is applied between the cell's style and its own \ options. This is particularly true of Input and Output.\ \>", "Text"], Cell[StyleData["CellExpression"], PageWidth->Infinity, CellMargins->{{6, Inherited}, {Inherited, Inherited}}, ShowCellLabel->False, ShowSpecialCharacters->False, AllowInlineCells->False, Hyphenation->False, AutoItalicWords->{}, StyleMenuListing->None, FontFamily->"Courier", FontSize->12, Background->GrayLevel[1]], Cell[StyleData["InputForm"], InputAutoReplacements->{}, AllowInlineCells->False, Hyphenation->False, StyleMenuListing->None, FontFamily->"Courier"], Cell[StyleData["OutputForm"], PageWidth->Infinity, TextAlignment->Left, LineSpacing->{0.6, 1}, StyleMenuListing->None, FontFamily->"Courier"], Cell[StyleData["StandardForm"], InputAutoReplacements->{ "->"->"\[Rule]", ":>"->"\[RuleDelayed]", "<="->"\[LessEqual]", ">="->"\[GreaterEqual]", "!="->"\[NotEqual]", "=="->"\[Equal]", Inherited}, "TwoByteSyntaxCharacterAutoReplacement"->True, LineSpacing->{1.25, 0}, StyleMenuListing->None, FontFamily->"Courier"], Cell[StyleData["TraditionalForm"], InputAutoReplacements->{ "->"->"\[Rule]", ":>"->"\[RuleDelayed]", "<="->"\[LessEqual]", ">="->"\[GreaterEqual]", "!="->"\[NotEqual]", "=="->"\[Equal]", Inherited}, "TwoByteSyntaxCharacterAutoReplacement"->True, LineSpacing->{1.25, 0}, SingleLetterItalics->True, TraditionalFunctionNotation->True, DelimiterMatching->None, StyleMenuListing->None], Cell["\<\ The style defined below is mixed in to any cell that is in an inline cell \ within another.\ \>", "Text"], Cell[StyleData["InlineCell"], LanguageCategory->"Formula", ScriptLevel->1, StyleMenuListing->None], Cell[StyleData["InlineCellEditing"], StyleMenuListing->None, Background->RGBColor[1, 0.749996, 0.8]] }, Closed]], Cell[CellGroupData[{ Cell["Automatic Styles", "Section"], Cell["\<\ The cells below define styles that are used to affect the display of certain \ types of objects in typeset expressions. For example, \"UnmatchedBracket\" \ style defines how unmatched bracket, curly bracket, and parenthesis \ characters are displayed (typically by coloring them to make them stand out).\ \ \>", "Text"], Cell[StyleData["UnmatchedBracket"], StyleMenuListing->None, FontColor->RGBColor[0.760006, 0.330007, 0.8]] }, Closed]] }, Open ]] }] ] (******************************************************************* Cached data follows. If you edit this Notebook file directly, not using Mathematica, you must remove the line containing CacheID at the top of the file. The cache data will then be recreated when you save this file from within Mathematica. *******************************************************************) (*CellTagsOutline CellTagsIndex->{} *) (*CellTagsIndex CellTagsIndex->{} *) (*NotebookFileOutline Notebook[{ Cell[CellGroupData[{ Cell[1776, 53, 47, 1, 69, "Title"], Cell[1826, 56, 88, 1, 39, "Subtitle"], Cell[1917, 59, 709, 13, 71, "Text"], Cell[2629, 74, 150, 3, 33, "Text"], Cell[2782, 79, 190, 4, 33, "Text"], Cell[2975, 85, 81, 1, 30, "Input"], Cell[CellGroupData[{ Cell[3081, 90, 40, 0, 53, "Subsubtitle"], Cell[3124, 92, 4403, 96, 890, "Input", InitializationCell->True] }, Closed]], Cell[CellGroupData[{ Cell[7564, 193, 43, 0, 42, "Subsubtitle"], Cell[7610, 195, 175, 4, 30, "Input", InitializationCell->True], Cell[7788, 201, 296, 5, 52, "Text"], Cell[8087, 208, 685, 11, 90, "Input", InitializationCell->True], Cell[8775, 221, 248, 5, 50, "Input", InitializationCell->True], Cell[9026, 228, 311, 7, 90, "Input", InitializationCell->True], Cell[9340, 237, 705, 15, 170, "Input", InitializationCell->True], Cell[10048, 254, 174, 4, 30, "Input", InitializationCell->True], Cell[10225, 260, 181, 4, 30, "Input", InitializationCell->True], Cell[10409, 266, 267, 5, 50, "Input", InitializationCell->True], Cell[10679, 273, 327, 7, 50, "Input", InitializationCell->True], Cell[11009, 282, 812, 15, 210, "Input", InitializationCell->True], Cell[11824, 299, 1060, 20, 230, "Input", InitializationCell->True] }, Closed]], Cell[CellGroupData[{ Cell[12921, 324, 31, 0, 42, "Subsubtitle"], Cell[12955, 326, 96, 2, 33, "Text"], Cell[13054, 330, 58, 1, 30, "Input"], Cell[13115, 333, 102, 3, 33, "Text"], Cell[13220, 338, 47, 1, 30, "Input"], Cell[13270, 341, 85, 2, 33, "Text"], Cell[13358, 345, 91, 1, 30, "Input"], Cell[13452, 348, 540, 16, 52, "Text"], Cell[13995, 366, 46, 1, 30, "Input"], Cell[14044, 369, 93, 2, 33, "Text"], Cell[14140, 373, 72, 1, 30, "Input"], Cell[14215, 376, 277, 6, 33, "Text"], Cell[14495, 384, 76, 1, 30, "Input"], Cell[14574, 387, 205, 6, 33, "Text"], Cell[14782, 395, 65, 1, 30, "Input"], Cell[14850, 398, 214, 6, 33, "Text"], Cell[15067, 406, 58, 1, 30, "Input"], Cell[15128, 409, 215, 6, 33, "Text"], Cell[15346, 417, 70, 1, 30, "Input"], Cell[15419, 420, 504, 9, 71, "Text"], Cell[15926, 431, 61, 1, 30, "Input"], Cell[15990, 434, 164, 5, 33, "Text"], Cell[16157, 441, 58, 1, 30, "Input"] }, Open ]] }, Open ]] } ] *) (******************************************************************* End of Mathematica Notebook file. *******************************************************************)