(* Content-type: application/mathematica *)

(*** Wolfram Notebook File ***)
(* http://www.wolfram.com/nb *)

(* CreatedBy='Mathematica 6.0' *)

(*CacheID: 234*)
(* Internal cache information:
NotebookFileLineBreakTest
NotebookFileLineBreakTest
NotebookDataPosition[       145,          7]
NotebookDataLength[     96859,       1932]
NotebookOptionsPosition[     95809,       1891]
NotebookOutlinePosition[     96215,       1908]
CellTagsIndexPosition[     96172,       1905]
WindowFrame->Normal*)

(* Beginning of Notebook Content *)
Notebook[{

Cell[CellGroupData[{
Cell["Virtual Oscilloscope", "Title",
 CellChangeTimes->{{3.432923847109375*^9, 3.432923856984375*^9}, 
   3.434887436203125*^9, 3.434958266765625*^9}],

Cell[CellGroupData[{

Cell["Defs", "Subsection",
 CellChangeTimes->{{3.43564853525*^9, 3.435648536671875*^9}}],

Cell[CellGroupData[{

Cell["Plotlabel", "Subsubsection",
 CellChangeTimes->{
  3.454214076203125*^9, {3.454214184296875*^9, 3.454214192671875*^9}}],

Cell[BoxData[
 RowBox[{
  RowBox[{"makePlotlabel", "[", 
   RowBox[{"text1_", ",", "zahl_", ",", "text2_"}], "]"}], ":=", 
  "\[IndentingNewLine]", " ", 
  RowBox[{"text1", "<>", "\"\< = \>\"", "<>", " ", 
   RowBox[{"ToString", "[", "zahl", "]"}], "<>", "text2"}]}]], "Input",
 CellChangeTimes->{{3.43427946375*^9, 3.434279628421875*^9}, {
   3.43427976690625*^9, 3.43427979140625*^9}, {3.434279882171875*^9, 
   3.43427992884375*^9}, {3.434280001453125*^9, 3.43428001146875*^9}, {
   3.43428197259375*^9, 3.434281993609375*^9}, 3.4349575158125*^9, 
   3.45421395575*^9}],

Cell[BoxData[
 RowBox[{
  RowBox[{"makePlotlabel", "[", "frequencyRatio_", "]"}], ":=", 
  "\[IndentingNewLine]", 
  RowBox[{"Style", "[", "\[IndentingNewLine]", 
   RowBox[{
    RowBox[{
     RowBox[{"ToString", "[", 
      RowBox[{"TraditionalForm", "[", 
       RowBox[{
       "\"\<\!\(\*SubscriptBox[\(f\), \(x\)]\)\>\"", "/", 
        "\"\<\!\(\*SubscriptBox[\(f\), \(y\)]\)\>\""}], "]"}], "]"}], "<>", 
     "\[IndentingNewLine]", "\"\< = \>\"", "<>", "\[IndentingNewLine]", 
     RowBox[{"ToString", "[", 
      RowBox[{"TraditionalForm", "[", "frequencyRatio", "]"}], "]"}]}], ",", 
    "\[IndentingNewLine]", "Green"}], "\[IndentingNewLine]", "]"}]}]], "Input",
 CellChangeTimes->{{3.45421335625*^9, 3.454213425640625*^9}, 
   3.4542134981875*^9, {3.454215011765625*^9, 3.4542150193125*^9}}]
}, Open  ]],

Cell[CellGroupData[{

Cell["speakerIcon", "Subsubsection",
 CellChangeTimes->{{3.454214076203125*^9, 3.4542140954375*^9}}],

Cell[BoxData[
 RowBox[{
  RowBox[{"speakerIcon", "=", 
   RowBox[{"Show", "[", "\[IndentingNewLine]", 
    RowBox[{
     RowBox[{"Graphics", "[", "\[IndentingNewLine]", 
      RowBox[{"{", 
       RowBox[{"Black", ",", "\[IndentingNewLine]", 
        RowBox[{"Line", "[", "\[IndentingNewLine]", 
         RowBox[{"{", 
          RowBox[{
           RowBox[{"{", 
            RowBox[{
             RowBox[{"-", "1"}], ",", "0.75"}], "}"}], ",", 
           RowBox[{"{", 
            RowBox[{"0", ",", "0.75"}], "}"}], ",", 
           RowBox[{"{", 
            RowBox[{"0.8", ",", "1.55"}], "}"}], ",", 
           RowBox[{"{", 
            RowBox[{"0.8", ",", 
             RowBox[{"-", "1.55"}]}], "}"}], ",", "\[IndentingNewLine]", 
           RowBox[{"{", 
            RowBox[{"0", ",", 
             RowBox[{"-", "0.75"}]}], "}"}], ",", 
           RowBox[{"{", 
            RowBox[{
             RowBox[{"-", "1"}], ",", 
             RowBox[{"-", "0.75"}]}], "}"}], ",", 
           RowBox[{"{", 
            RowBox[{
             RowBox[{"-", "1"}], ",", "0.75"}], "}"}]}], "}"}], 
         "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]", 
        RowBox[{"Line", "[", 
         RowBox[{"{", 
          RowBox[{
           RowBox[{"{", 
            RowBox[{"0", ",", 
             RowBox[{"-", "2"}]}], "}"}], ",", 
           RowBox[{"{", 
            RowBox[{"0", ",", "2"}], "}"}]}], "}"}], "]"}], ",", 
        "\[IndentingNewLine]", 
        RowBox[{"Circle", "[", 
         RowBox[{
          RowBox[{"{", 
           RowBox[{
            RowBox[{"-", "1.2"}], ",", "0"}], "}"}], ",", "3", ",", 
          RowBox[{"{", 
           RowBox[{
            RowBox[{
             RowBox[{"-", "Pi"}], "/", "5"}], ",", 
            RowBox[{"Pi", "/", "5"}]}], "}"}]}], "]"}], ",", 
        "\[IndentingNewLine]", 
        RowBox[{"Circle", "[", 
         RowBox[{
          RowBox[{"{", 
           RowBox[{
            RowBox[{"-", "1.2"}], ",", "0"}], "}"}], ",", "3.5", ",", 
          RowBox[{"{", 
           RowBox[{
            RowBox[{
             RowBox[{"-", "Pi"}], "/", "5"}], ",", 
            RowBox[{"Pi", "/", "5"}]}], "}"}]}], "]"}], ",", 
        "\[IndentingNewLine]", 
        RowBox[{"Circle", "[", 
         RowBox[{
          RowBox[{"{", 
           RowBox[{
            RowBox[{"-", "1.2"}], ",", "0"}], "}"}], ",", "4", ",", 
          RowBox[{"{", 
           RowBox[{
            RowBox[{
             RowBox[{"-", "Pi"}], "/", "5"}], ",", 
            RowBox[{"Pi", "/", "5"}]}], "}"}]}], "]"}]}], 
       "\[IndentingNewLine]", "}"}], "]"}], ",", "\[IndentingNewLine]", 
     RowBox[{"ImageSize", "\[Rule]", "20"}]}], "\[IndentingNewLine]", "]"}]}],
   ";"}]], "Input",
 CellChangeTimes->{{3.43488434628125*^9, 3.434884347765625*^9}, {
   3.4348867088125*^9, 3.434886709515625*^9}, {3.434887185796875*^9, 
   3.434887218421875*^9}, {3.434887476046875*^9, 3.434887487734375*^9}, 
   3.434955260046875*^9, 3.434955347125*^9, {3.43495748525*^9, 
   3.434957491625*^9}, {3.434957559546875*^9, 3.434957560296875*^9}, 
   3.434957594734375*^9, {3.434958221734375*^9, 3.434958228359375*^9}, {
   3.454213104234375*^9, 3.454213106921875*^9}, 3.45421327875*^9, 
   3.454214356390625*^9}]
}, Open  ]],

Cell[CellGroupData[{

Cell["Buttons for the waveforms with tooltips", "Subsubsection",
 CellChangeTimes->{{3.454214076203125*^9, 3.454214133921875*^9}, 
   3.454214207640625*^9}],

Cell[BoxData[
 RowBox[{
  RowBox[{"makeTooltip", "[", 
   RowBox[{"{", 
    RowBox[{"f_", ",", "fString_"}], "}"}], "]"}], ":=", 
  "\[IndentingNewLine]", 
  RowBox[{"Tooltip", "[", "\[IndentingNewLine]", 
   RowBox[{
    RowBox[{"Show", "[", "\[IndentingNewLine]", 
     RowBox[{
      RowBox[{"{", "\[IndentingNewLine]", 
       RowBox[{
        RowBox[{"Graphics", "[", "\[IndentingNewLine]", 
         RowBox[{"{", 
          RowBox[{"LightGray", ",", 
           RowBox[{"Disk", "[", 
            RowBox[{
             RowBox[{"{", 
              RowBox[{"0", ",", "0"}], "}"}], ",", "4"}], "]"}], ",", "Black",
            ",", 
           RowBox[{"Circle", "[", 
            RowBox[{
             RowBox[{"{", 
              RowBox[{"0", ",", "0"}], "}"}], ",", "4"}], "]"}]}], "}"}], 
         "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]", 
        RowBox[{"Plot", "[", 
         RowBox[{
          RowBox[{"2", 
           RowBox[{"f", "[", "x", "]"}]}], ",", 
          RowBox[{"{", 
           RowBox[{"x", ",", 
            RowBox[{"-", "Pi"}], ",", "Pi"}], "}"}], ",", 
          RowBox[{"Axes", "\[Rule]", "None"}], ",", 
          RowBox[{"PlotStyle", "\[Rule]", "Red"}]}], "]"}]}], 
       "\[IndentingNewLine]", "}"}], ",", "\[IndentingNewLine]", 
      RowBox[{"ImageSize", "\[Rule]", "40"}], ",", 
      RowBox[{"PlotRange", "\[Rule]", 
       RowBox[{"{", 
        RowBox[{
         RowBox[{"{", 
          RowBox[{
           RowBox[{"-", "4"}], ",", "4"}], "}"}], ",", 
         RowBox[{"{", 
          RowBox[{
           RowBox[{"-", "4"}], ",", "4"}], "}"}]}], "}"}]}], ",", 
      "\[IndentingNewLine]", 
      RowBox[{"PlotRangePadding", "\[Rule]", 
       RowBox[{"{", 
        RowBox[{".2", ",", ".2"}], "}"}]}]}], "\[IndentingNewLine]", "]"}], 
    ",", "fString"}], "\[IndentingNewLine]", "]"}]}]], "Input",
 CellChangeTimes->{{3.434028355375*^9, 3.43402846246875*^9}, {
   3.434028526671875*^9, 3.434028637796875*^9}, {3.43402878803125*^9, 
   3.4340288286875*^9}, 3.434029833890625*^9, 3.434029868765625*^9, {
   3.434029952296875*^9, 3.434029970640625*^9}, {3.43403024653125*^9, 
   3.4340302896875*^9}, {3.434030343609375*^9, 3.43403035075*^9}, {
   3.43409702228125*^9, 3.43409707684375*^9}, {3.43411226534375*^9, 
   3.434112317515625*^9}, {3.434112351171875*^9, 3.434112438734375*^9}, {
   3.434112537671875*^9, 3.434112577515625*^9}, 3.43417600409375*^9, {
   3.434278823625*^9, 3.43427883175*^9}, {3.43427891396875*^9, 
   3.4342789218125*^9}, {3.434278962859375*^9, 3.434278964265625*^9}, {
   3.434279066171875*^9, 3.434279071671875*^9}, {3.43427920015625*^9, 
   3.4342792015625*^9}, {3.434279237046875*^9, 3.43427924446875*^9}, {
   3.43427934571875*^9, 3.434279346046875*^9}, {3.45421309296875*^9, 
   3.454213096234375*^9}, {3.45421399571875*^9, 3.454214020171875*^9}, {
   3.45421446903125*^9, 3.454214499078125*^9}}],

Cell[BoxData[{
 RowBox[{
  RowBox[{
   RowBox[{"auxTriangle", "[", "x_", "]"}], ":=", " ", 
   RowBox[{"\[Piecewise]", GridBox[{
      {
       RowBox[{"1", "-", " ", 
        RowBox[{"2", 
         RowBox[{"x", "/", "Pi"}]}]}], 
       RowBox[{"0", "\[LessEqual]", " ", "x", " ", "<", "Pi"}]},
      {
       RowBox[{
        RowBox[{"-", "3"}], "+", 
        RowBox[{"2", 
         RowBox[{"x", "/", "Pi"}]}]}], 
       RowBox[{"Pi", "\[LessEqual]", " ", "x", " ", "<", 
        RowBox[{"2", "Pi"}]}]}
     }]}]}], ";"}], "\[IndentingNewLine]", 
 RowBox[{
  RowBox[{
   RowBox[{"triangle", "[", "x_", "]"}], ":=", 
   RowBox[{"auxTriangle", "[", 
    RowBox[{"Mod", "[", 
     RowBox[{
      RowBox[{"x", "-", 
       RowBox[{"Pi", "/", "2"}]}], ",", 
      RowBox[{"2", "Pi"}]}], "]"}], "]"}]}], ";"}], "\[IndentingNewLine]", 
 RowBox[{
  RowBox[{
   RowBox[{"sawtooth", "[", "x_", "]"}], ":=", 
   RowBox[{
    RowBox[{
     RowBox[{"Mod", "[", 
      RowBox[{
       RowBox[{"x", "+", "Pi"}], ",", 
       RowBox[{"2", "Pi"}]}], "]"}], "/", "Pi"}], "-", "1"}]}], 
  ";"}], "\[IndentingNewLine]", 
 RowBox[{
  RowBox[{"functionsAndNames", "=", "\[IndentingNewLine]", 
   RowBox[{"{", 
    RowBox[{
     RowBox[{"{", 
      RowBox[{"Sin", ",", "\"\<Sine\>\""}], "}"}], ",", "\[IndentingNewLine]", 
     RowBox[{"{", 
      RowBox[{"triangle", ",", "\"\<Triangle\>\""}], "}"}], ",", 
     "\[IndentingNewLine]", 
     RowBox[{"{", 
      RowBox[{"sawtooth", ",", "\"\<Sawtooth\>\""}], "}"}]}], "}"}]}], 
  ";"}], "\[IndentingNewLine]", 
 RowBox[{
  RowBox[{"tooltips", "=", 
   RowBox[{"makeTooltip", "/@", "functionsAndNames"}]}], 
  ";"}], "\[IndentingNewLine]", 
 RowBox[{
  RowBox[{"functions", "=", 
   RowBox[{"First", "@", 
    RowBox[{"Transpose", "@", "functionsAndNames"}]}]}], 
  ";"}], "\[IndentingNewLine]", 
 RowBox[{
  RowBox[{"list2Rule", "=", 
   RowBox[{
    RowBox[{"Apply", "[", 
     RowBox[{"Rule", ",", "#"}], "]"}], "&"}]}], ";"}], "\[IndentingNewLine]", 
 RowBox[{
  RowBox[{"functionsWithTooltips", "=", 
   RowBox[{"list2Rule", "/@", 
    RowBox[{"Transpose", "[", 
     RowBox[{"{", 
      RowBox[{"functions", ",", "tooltips"}], "}"}], "]"}]}]}], 
  ";"}]}], "Input",
 CellChangeTimes->{{3.43488434628125*^9, 3.434884347765625*^9}, {
   3.4348867088125*^9, 3.434886709515625*^9}, {3.434887185796875*^9, 
   3.434887218421875*^9}, {3.434887476046875*^9, 3.434887487734375*^9}, 
   3.434955260046875*^9, 3.434955347125*^9, {3.43495748525*^9, 
   3.434957491625*^9}, {3.434957559546875*^9, 3.434957560296875*^9}, {
   3.434957594734375*^9, 3.434957623703125*^9}, 3.434957807453125*^9, {
   3.43495828190625*^9, 3.434958339609375*^9}, {3.454212974375*^9, 
   3.454212975203125*^9}, {3.454214669671875*^9, 3.45421471815625*^9}, {
   3.454224810734375*^9, 3.45422491675*^9}, {3.45422543328125*^9, 
   3.454225464671875*^9}, {3.45422552809375*^9, 3.45422554878125*^9}, {
   3.45422559025*^9, 3.454225630640625*^9}, {3.454225669453125*^9, 
   3.454225727015625*^9}, {3.45422582040625*^9, 3.4542258271875*^9}, {
   3.454225864296875*^9, 3.45422589865625*^9}, 3.454226191484375*^9, {
   3.454226650234375*^9, 3.454226684875*^9}}]
}, Open  ]]
}, Closed]],

Cell[CellGroupData[{

Cell["Manipulate", "Subsection",
 CellChangeTimes->{{3.43564853525*^9, 3.435648536671875*^9}, 
   3.43564939246875*^9}],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"Manipulate", "[", "\[IndentingNewLine]", 
  RowBox[{
   RowBox[{
    RowBox[{"f0", "=", "200"}], ";", "\[IndentingNewLine]", 
    RowBox[{"a", "=", 
     RowBox[{"Range", "[", 
      RowBox[{
       RowBox[{"-", "1"}], ",", "1", ",", "0.25"}], "]"}]}], ";", 
    "\[IndentingNewLine]", 
    RowBox[{"\[Epsilon]", "=", 
     RowBox[{"10", "^", 
      RowBox[{"-", "5"}]}]}], ";", "\[IndentingNewLine]", 
    RowBox[{"ParametricPlot", "[", "\[IndentingNewLine]", 
     RowBox[{
      RowBox[{"{", 
       RowBox[{
        RowBox[{"ax", " ", 
         RowBox[{"fx", "[", 
          RowBox[{
           RowBox[{"\[Omega]x", " ", "t"}], "+", "\[Phi]x"}], "]"}]}], ",", 
        RowBox[{"ay", " ", 
         RowBox[{"fy", "[", 
          RowBox[{
           RowBox[{"\[Omega]y", " ", "t"}], "+", "\[Phi]y"}], "]"}]}]}], 
       "}"}], ",", "\[IndentingNewLine]", 
      RowBox[{"{", 
       RowBox[{"t", ",", "0", ",", 
        RowBox[{
         RowBox[{"LCM", "[", 
          RowBox[{
           RowBox[{"1", "/", "\[Omega]x"}], ",", 
           RowBox[{"1", "/", "\[Omega]y"}]}], "]"}], "2", "Pi", " ", 
         "tmax"}]}], "}"}], ",", "\[IndentingNewLine]", 
      RowBox[{"PlotRange", "\[Rule]", 
       RowBox[{"{", 
        RowBox[{
         RowBox[{"{", 
          RowBox[{
           RowBox[{"-", "1.01"}], ",", "1.01"}], "}"}], ",", 
         RowBox[{"{", 
          RowBox[{
           RowBox[{"-", "1.01"}], ",", "1.01"}], "}"}]}], "}"}]}], ",", 
      "\[IndentingNewLine]", 
      RowBox[{"PlotStyle", "\[Rule]", " ", "Green"}], ",", 
      RowBox[{"Background", "\[Rule]", "Black"}], ",", "\[IndentingNewLine]", 
      RowBox[{"PlotLabel", "\[Rule]", 
       RowBox[{"makePlotlabel", "[", 
        RowBox[{"\[Omega]x", "/", "\[Omega]y"}], "]"}]}], ",", 
      "\[IndentingNewLine]", 
      RowBox[{"AxesStyle", "\[Rule]", " ", "White"}], ",", 
      RowBox[{"GridLines", "\[Rule]", 
       RowBox[{"{", 
        RowBox[{"a", ",", "a"}], "}"}]}], ",", "\[IndentingNewLine]", 
      RowBox[{"GridLinesStyle", " ", "\[Rule]", " ", "Dashed"}], ",", 
      RowBox[{"ImageSize", "\[Rule]", "500"}]}], "\[IndentingNewLine]", 
     "]"}]}], ",", "\[IndentingNewLine]", "\[IndentingNewLine]", 
   RowBox[{"Style", "[", 
    RowBox[{"\"\<Horizontal\>\"", ",", "12", ",", "Bold", ",", 
     RowBox[{"TextAlignment", "\[Rule]", "Center"}]}], "]"}], ",", 
   "\[IndentingNewLine]", 
   RowBox[{"{", 
    RowBox[{
     RowBox[{"{", " ", 
      RowBox[{"fx", ",", "Sin", ",", "\"\<Waveform\>\""}], "}"}], ",", 
     "functionsWithTooltips"}], "}"}], ",", "\[IndentingNewLine]", 
   RowBox[{"{", 
    RowBox[{
     RowBox[{"{", 
      RowBox[{"ax", ",", "0.9", ",", "\"\<Amplitude\>\""}], "}"}], ",", "0", 
     ",", "1", ",", 
     RowBox[{"ImageSize", "\[Rule]", "Small"}]}], "}"}], ",", 
   "\[IndentingNewLine]", 
   RowBox[{"{", 
    RowBox[{
     RowBox[{"{", 
      RowBox[{"\[Omega]x", ",", "3", ",", "\"\<Frequency\>\""}], "}"}], ",", 
     "1", ",", "12", ",", "1", ",", 
     RowBox[{"ImageSize", "\[Rule]", "Small"}]}], "}"}], ",", 
   "\[IndentingNewLine]", 
   RowBox[{"{", 
    RowBox[{
     RowBox[{"{", 
      RowBox[{"\[Phi]x", ",", "0", ",", "\"\<Phase\>\""}], "}"}], ",", "0", 
     ",", 
     RowBox[{"2", "Pi"}], ",", 
     RowBox[{"ImageSize", "\[Rule]", "Small"}]}], "}"}], ",", 
   "\[IndentingNewLine]", 
   RowBox[{"Dynamic", "[", "\[IndentingNewLine]", 
    RowBox[{"TableForm", "[", "\[IndentingNewLine]", 
     RowBox[{"{", 
      RowBox[{"{", 
       RowBox[{
        RowBox[{"Button", "[", 
         RowBox[{"speakerIcon", ",", 
          RowBox[{"EmitSound", "@", 
           RowBox[{"Play", "[", 
            RowBox[{
             RowBox[{
              RowBox[{"Sin", "[", 
               RowBox[{"Pi", " ", "t"}], "]"}], 
              RowBox[{"fx", "[", 
               RowBox[{
               "f0", " ", "\[Omega]x", " ", "2", " ", "Pi", " ", "t"}], 
               "]"}]}], ",", 
             RowBox[{"{", 
              RowBox[{"t", ",", "0", ",", "1"}], "}"}]}], "]"}]}]}], "]"}], 
        ",", "\[IndentingNewLine]", 
        RowBox[{"Plot", "[", "\[IndentingNewLine]", 
         RowBox[{
          RowBox[{"ax", " ", 
           RowBox[{"fx", "[", 
            RowBox[{
             RowBox[{"\[Omega]x", " ", "2", " ", "Pi", " ", 
              RowBox[{"t", "/", "5"}]}], "+", "\[Phi]x"}], "]"}]}], ",", 
          RowBox[{"{", 
           RowBox[{"t", ",", "0", ",", "5"}], "}"}], ",", 
          "\[IndentingNewLine]", 
          RowBox[{"PlotRange", "\[Rule]", 
           RowBox[{"{", 
            RowBox[{
             RowBox[{"-", "1"}], ",", "1"}], "}"}]}], ",", 
          "\[IndentingNewLine]", 
          RowBox[{"PlotLabel", "\[Rule]", 
           RowBox[{"makePlotlabel", "[", 
            RowBox[{"\"\<\!\(\*SubscriptBox[\(f\), \(x\)]\)\>\"", ",", 
             RowBox[{"\[Omega]x", " ", "f0"}], ",", "\"\< Hz\>\""}], "]"}]}], 
          ",", "\[IndentingNewLine]", 
          RowBox[{"AxesLabel", "\[Rule]", 
           RowBox[{"{", 
            RowBox[{"\"\<t/ms\>\"", ",", "\"\<\>\""}], "}"}]}], ",", 
          RowBox[{"ImageSize", "\[Rule]", "160"}]}], "\[IndentingNewLine]", 
         "]"}]}], "}"}], "}"}], "\[IndentingNewLine]", "]"}], 
    "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]", "Delimiter", 
   ",", "\[IndentingNewLine]", 
   RowBox[{"Style", "[", 
    RowBox[{"\"\<Vertical\>\"", ",", "12", ",", "Bold", ",", 
     RowBox[{"TextAlignment", "\[Rule]", "Center"}]}], "]"}], ",", 
   "\[IndentingNewLine]", 
   RowBox[{"{", 
    RowBox[{
     RowBox[{"{", 
      RowBox[{"fy", ",", "Sin", ",", "\"\<Waveform\>\""}], "}"}], ",", 
     "functionsWithTooltips"}], "}"}], ",", "\[IndentingNewLine]", 
   RowBox[{"{", 
    RowBox[{
     RowBox[{"{", 
      RowBox[{"ay", ",", "0.9", ",", "\"\<Amplitude\>\""}], "}"}], ",", "0", 
     ",", "1", ",", 
     RowBox[{"ImageSize", "\[Rule]", "Small"}]}], "}"}], ",", 
   "\[IndentingNewLine]", 
   RowBox[{"{", 
    RowBox[{
     RowBox[{"{", 
      RowBox[{"\[Omega]y", ",", "1", ",", "\"\<Frequency\>\""}], "}"}], ",", 
     "1", ",", "12", ",", "1", ",", 
     RowBox[{"ImageSize", "\[Rule]", "Small"}]}], "}"}], ",", 
   "\[IndentingNewLine]", 
   RowBox[{"{", 
    RowBox[{
     RowBox[{"{", 
      RowBox[{"\[Phi]y", ",", "0.6", ",", "\"\<Phase\>\""}], "}"}], ",", "0", 
     ",", 
     RowBox[{"2", "Pi"}], ",", 
     RowBox[{"ImageSize", "\[Rule]", "Small"}]}], "}"}], ",", 
   "\[IndentingNewLine]", 
   RowBox[{"Dynamic", "[", "\[IndentingNewLine]", 
    RowBox[{"TableForm", "[", "\[IndentingNewLine]", 
     RowBox[{"{", 
      RowBox[{"{", 
       RowBox[{
        RowBox[{"Button", "[", 
         RowBox[{"speakerIcon", ",", 
          RowBox[{"EmitSound", "@", 
           RowBox[{"Play", "[", 
            RowBox[{
             RowBox[{
              RowBox[{"Sin", "[", 
               RowBox[{"Pi", " ", "t"}], "]"}], 
              RowBox[{"fy", "[", 
               RowBox[{
               "f0", " ", "\[Omega]y", " ", "2", " ", "Pi", " ", "t"}], 
               "]"}]}], ",", 
             RowBox[{"{", 
              RowBox[{"t", ",", "0", ",", "1"}], "}"}]}], "]"}]}]}], "]"}], 
        ",", "\[IndentingNewLine]", 
        RowBox[{"Plot", "[", "\[IndentingNewLine]", 
         RowBox[{
          RowBox[{"ay", " ", 
           RowBox[{"fy", "[", 
            RowBox[{
             RowBox[{"\[Omega]y", " ", "2", " ", "Pi", " ", 
              RowBox[{"t", "/", "5"}]}], "+", "\[Phi]y"}], "]"}]}], ",", 
          RowBox[{"{", 
           RowBox[{"t", ",", "0", ",", "5"}], "}"}], ",", 
          "\[IndentingNewLine]", 
          RowBox[{"PlotRange", "\[Rule]", 
           RowBox[{"{", 
            RowBox[{
             RowBox[{"-", "1"}], ",", "1"}], "}"}]}], ",", 
          "\[IndentingNewLine]", 
          RowBox[{"PlotLabel", "\[Rule]", 
           RowBox[{"makePlotlabel", "[", 
            RowBox[{"\"\<\!\(\*SubscriptBox[\(f\), \(y\)]\)\>\"", ",", 
             RowBox[{"\[Omega]y", " ", "f0"}], ",", "\"\< Hz\>\""}], "]"}]}], 
          ",", "\[IndentingNewLine]", 
          RowBox[{"AxesLabel", "\[Rule]", 
           RowBox[{"{", 
            RowBox[{"\"\<t/ms\>\"", ",", "\"\<\>\""}], "}"}]}], ",", 
          RowBox[{"ImageSize", "\[Rule]", "160"}]}], "\[IndentingNewLine]", 
         "]"}]}], "}"}], "}"}], "\[IndentingNewLine]", "]"}], 
    "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]", "Delimiter", 
   ",", "\[IndentingNewLine]", 
   RowBox[{"{", 
    RowBox[{
     RowBox[{"{", 
      RowBox[{"tmax", ",", "1", ",", "\"\<fraction of cycle\>\""}], "}"}], 
     ",", "\[Epsilon]", ",", "1", ",", 
     RowBox[{"ControlType", "\[Rule]", "Slider"}], ",", 
     RowBox[{"ImageSize", "\[Rule]", "Small"}]}], "}"}], ",", 
   "\[IndentingNewLine]", 
   RowBox[{"ControlPlacement", "\[Rule]", "Right"}], ",", 
   "\[IndentingNewLine]", 
   RowBox[{"FrameLabel", "\[Rule]", 
    RowBox[{"{", 
     RowBox[{
      RowBox[{"{", 
       RowBox[{"\"\<\>\"", ",", "\"\<\>\""}], "}"}], ",", 
      RowBox[{"{", 
       RowBox[{"\"\<\>\"", ",", 
        RowBox[{"Style", "[", 
         RowBox[{"\"\<The Virtual Oscilloscope\>\"", ",", "18", ",", "Bold"}],
          "]"}]}], "}"}]}], "}"}]}], ",", "\[IndentingNewLine]", 
   RowBox[{"SaveDefinitions", "\[Rule]", "True"}]}], "\[IndentingNewLine]", 
  "]"}]], "Input",
 CellChangeTimes->{{3.43488434628125*^9, 3.434884347765625*^9}, {
   3.4348867088125*^9, 3.434886709515625*^9}, {3.434887185796875*^9, 
   3.434887218421875*^9}, {3.434887476046875*^9, 3.434887487734375*^9}, 
   3.434955260046875*^9, 3.434955347125*^9, {3.43495748525*^9, 
   3.434957491625*^9}, {3.434957559546875*^9, 3.434957560296875*^9}, {
   3.434957594734375*^9, 3.434957623703125*^9}, 3.4349577095625*^9, 
   3.434957755171875*^9, {3.43495823978125*^9, 3.434958242703125*^9}, {
   3.435648341578125*^9, 3.435648363546875*^9}, {3.4356484963125*^9, 
   3.43564851121875*^9}, {3.4356485506875*^9, 3.43564855790625*^9}, {
   3.435648752921875*^9, 3.435648773890625*^9}, {3.43564884790625*^9, 
   3.435648849046875*^9}, {3.4359132778125*^9, 3.435913306*^9}, {
   3.45421316096875*^9, 3.454213164953125*^9}, {3.454213547703125*^9, 
   3.454213597046875*^9}, 3.454216583*^9, 3.454221926453125*^9, 
   3.454222170875*^9, {3.4542222291875*^9, 3.45422225278125*^9}, 
   3.45423338428125*^9, {3.45424446209375*^9, 3.454244521203125*^9}, 
   3.454245359828125*^9}],

Cell[BoxData[
 TagBox[
  StyleBox[
   DynamicModuleBox[{$CellContext`ax$$ = 0.9, $CellContext`ay$$ = 
    0.9, $CellContext`fx$$ = Sin, $CellContext`fy$$ = 
    Sin, $CellContext`tmax$$ = 1, $CellContext`\[Phi]x$$ = 
    0, $CellContext`\[Phi]y$$ = 0.6, $CellContext`\[Omega]x$$ = 
    3, $CellContext`\[Omega]y$$ = 1, Typeset`show$$ = True, 
    Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu", 
    Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ = 
    "\"untitled\"", Typeset`specs$$ = {{
      Hold[
       Style["Horizontal", 12, Bold, TextAlignment -> Center]], 
      Manipulate`Dump`ThisIsNotAControl}, {{
       Hold[$CellContext`fx$$], Sin, "Waveform"}, {Sin -> Tooltip[
         Graphics[{{
            GrayLevel[0.85], 
            Disk[{0, 0}, 4], 
            GrayLevel[0], 
            Circle[{0, 0}, 4]}, {{{}, {}, {
              Hue[0.67, 0.6, 0.6], 
              RGBColor[1, 0, 0], 
              Line[CompressedData["
1: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
Ep41Kk7/cZGtP1bSSth+2cXkfm0uGq7oUhgnnNmgQndfycXEXaUnhIRnBH6u
mVzMRebl6EKKsJOe8zEfJS4+ljm+kEs4b2jm5BQ5Lia1qfj9JazwIiMgUIqc
x7JisJrwaeuD82aJOMgyuXw4hfBnCepdxCQHU7TX1PsTXpATr7dwiIPtrAlL
K8KeLrsqX/UQlm2pm024XHnUYVULB195sOx/kPOrVj0eTa3j4MentoO+hC/5
6vlt/s7BbXcV/DQIV6/vVCz8zMGWL9sXlZP6ruwNeG2Ux8HiA1OKjhD2faK5
+XsaB2Nq3U4Pkf40mdaWWb3j4MMdbxd4EtYWXLRresHBZaY1NUOkv3eSFw46
POWgGVc25CjhtqPF13ofckhf7u77RvSxSdFFzvUOBwuOuyxZTbjvYub6yxc4
6F2gUFfDIXpYZfeFOkvOf1s/R4lwRAu1L+AEBw18HryyIXrcYWB2OdyGg76H
7j7OmCT9nd6FH9ZzcM1Lt17JcdLf/DtWOqs4+J7tJC9B/GHjvqY7T42DjulX
d3KJn8TrL0mVzeLgqI5JXRnxm1O03O6uYTZWmSl7CvpJfyyy2pz72KgmPcJO
/0P6M+WQx0grG9du9Q86Svz8+eSbcEEFG8VtzjW+IH5X097aPDeJjZaPbJWz
ydw0t/4bofWKjf/Oeq6lt5B6ez3ea/ycjbHhPlc/N1NYlTtU4X2Pjemhtfkp
JH+uGMRg/Rk2HnJcO6JZQ+HrY7t8Bo+xUd7WrvLSD9Kf26wtEvZsXBER1pdf
SeGKb3vSN5izcTiw7fuabxTWW1PxYZpsHDy32S39M4WUV5Jj4jI2XkhUWMcg
ebjqyf5Fn1XI+WLC138tJP38nfJkTIaNLcwLE3kkT9ccPxpkOcTCqWOFV3am
UxjgXeQum8zCj7wTc4ZiKUx7clZT/Q0La64n026QfG/5OP/v1hgWVk3/b8O0
5xSuF51zOvuAhcUnr3lIkfnQHrBkX4UbCytGZQ7H3yN58PSWbtBaFr5gfX7g
5k3yJm+HpFTaJJbeldEzMKQwKTTn2/m3k/hR2Xv5IzLfXJ01QjpjJ/HFDu15
bXoUDs2ZqVzwYBIX3+xesJ/Mx1GPem0v10ls80/LaF1G/K9+zL5rxSS+D2Rr
bSPzdkq4b0ZhDBP9IrrTbfJFWOwyfkkzgon01Nt/g3JE6E8/vi3yPhNL9vtb
5KaLUHJ4Z7m3DxOnT1+awnlL5rupXLumHROz7+/okXssQlkqevrzOUx0TXJ0
eXZGhMpnPjleDJ7AYskun6UKIowsKzOe6T+BD2+aKDnIiHCBesPqV1cnMD9B
wylEinDn6GTV6Ql07S6Xa+EJcd5+9SB10wnUWivBkesW4mzD0PSfkhPI6ppw
/5cmRBnlU+I6N8Yx4RJb/pqpEEXfFF6PnhtD+9kdy88fFaDVU/UspdNj6JQa
9VaL7H/xJ3RLtjmN4anEyIPdVgLcRXPqDbYeQ/WFjru3GAowYmPaco0NY6jk
+uJDyHIBrnlh8caROYp5tQFdgn4+2nsHJ9ReGMVrjTRaNdlPz4OMjQt7GGvu
3D1YacdDI0O8faxvGJvbi/vUrHg4d6dnzuGfw3iYe1vMfScPc/c0LbDOGMYO
fuTA+AYeCg7Hd+q6k+tzTzS9lOGhv4++u8yfIbxWaPwoJp+LER9dg1IaBjEo
zPjuCpKLuRsqGZNZA3ho80TPwhw2psh/TVUq6MOZrKk/PNqZeF73mfg29y5s
tz6hccttDHVvHzHpP92CPtU7H224/g9HnAUPb9ytx8Y+85dlWj1468tzXeCU
oorM5ZWe9Y3Y8En/S6J4KhY2yJwU0Rh4RNNYaBOaDC7VDotSgguh0+TAPreY
MuhVVNV/fbEJmCmQMk+vHhxXpC8z7u2G5teL3MaqW0DuW+w7neZ/cNXtk8m+
2C54flk7qzhiDA68WLs/6n4frA95dcD+ExNO3imf0l49AJvvy3erl7PBXu5M
TnnHAFjEFueV17HB6omMa+boAHwf2fvhZBsb9BMsfgbO+geVgodNDybYoFD6
M0HH8h8YhJmLnizkQIFUl3nQj3+gscpp+z0PDswO4EVsrBoE8+jjjd3yXCj2
X706+PswzCq39asz4IEu9fiF+u9h2JotHvlpFw/SL9PmFg0Mw4a2k+ei9/Ig
zu0njTVtBKJ+t9nuOcEDvwM3Go6YjMCFfzVFx+/yYLtm3c0NJSPgtyfE2KmS
Bx0uW13PHhkFT0dBdag1H1QSxt/onhqFTYFzej/Y8eFAT0LnVPdRuB2hf6nY
iQ/VDgr7466PQm+a5Ozfnnxg7P1j0Bg9CmF/FAc/hfEhdmuokkHLKDT+yLu4
vYYPDvK9n2cfHIPNOwxUbE0FIBFZz7znOAZxBb9/6FsJIHHJF3Xx02PAlJWL
UD4oAPaGV0FjV8ZAzdbTqshZACG2jtZVUWPgliO188MdARQ/b+280zEGH46G
m0l+EcBK9QYa/9Q42EoHqyVsEkJVcsl6T49x+HyqVjZ4qxC8N2cd/3tpHMxW
BlU4Gwnhs8mjssbAcdg28CJtmrUQDp2xDslMGoev1euG+l2F8CC1arHbyDio
q8bdUX4phAnd0m2dFyagb6l5mpG4CL7uTd1Ren0CTPMfTXySFsFT12fmHwIm
4Fqoas9qWRFsizljdzliAsrbs79NzhNBkNisC/LZE0AL1QlcpyWCJWUHPhhM
TkD9Gun3O/eLwGrfgHLceSZUxcoN9r4SwTK3uiV3rzJhQ6rxXY+3ImAF5Gu4
3WLCG6+fSRPvRRCV+2CzbjgTknsf+3dniaBfecPe2nQmaM4yc3ApFYFv19Wg
KeNM4GaUl8j8FUGK+0yuk8ck7I1zOpKkTsFgnTZ7/NIk0Mu1pcJWUbBqi82k
381JODk4heGuRUE87flYXNgkBP7b6TxrEwWRoSsHujInofv8pGufEQX+GYa/
nbiTEORibt9zlILPSqd+jYuxYDl7bqbecQqoq0GNftNZsOOPo2zQKQquGNXU
xSmzQIGV9nWGGwXuPx0qurayYMjMTvPVFQrs2JcLnPxYICcDkmphFDw5FP1p
PIgFf5/Mmd//iIJ6ZHz0C2eBjfCq2psnFFjcnZodF8+C8IwGmanRFBjNf5zc
9ZUFS4JdttgnUOB3Lfe95w8WxPpZ/25+RwF2/k6c0sQCvavfXS3fU6CbuCRh
yV8WuDXEHFBNo2CtXmqs0ww2aJ3Ppu/No8A1ti56XJENgcEco8B8ChLF2c/9
VNiwUvLc+uxCCpZVbH0at4YNq1IDvzI/U7Dg8PeQLgs2OE8L/izxnQKJG303
nR6x4T/liXvuvyhwOy++zzGKDQYyzy05zRQ0nVJdeTSeDXqTv1Uvt1Dw3tKu
6nAmGzzNE7uc2imwWVK14GA9G5a/Pt/Z0ENB4dx/Q/tb2DAkXs1Z3EfByhnS
RbY9bDiyXTDP8Q8FggmDUzZMNuQ9u+35/S8Fr0qyMixmc0ARFf3owxTIkEGw
R4UDQ3rPGk1HKLiQPHJw9zIOyFfGbzAbpWDXEw2amQ4H4udbiDaOU5B5z7jO
VJ8D3sbnXRdPULDI99gbEyPCp1d20JgUjDtHmxvbcCD6+MnGpEkK7A/nLd5h
zwGbKH87bxYFX60axw2Pc8DtgUPXJjbRj678MwMvDqhYBVAvOaQ+a7Vc6T7k
/t6XH5lxSX2WmgH4c2Anz3PNEOHtMrd79R9x4FTBr9Pz+KQ+tLhcvSgOjBsI
ZOMIz50svKcbT3Iy62H2UgEFvn9/O/z3ngNns887RhMeaOWs25LJAZ2eQDk5
Ialn7RzJzfkc2PY7i3GJcOHX9U0bv3BAfHOrVzPhlZ8sknQqOJAQ+me1joiC
sBTX6xvqOSC8Vdh7m7DgVaDV+hYOhL3eHUf2bTj59M2ydT0ceB/s5yhPUVAd
XMxeO8gB6yrzpWaEdW92fNNicsBSFP3Hh3C8tzB6jYAD/6W4JL8hLHt6wTlN
CS6c9Xx9sYzwJYfNRqtluDC3ycSwi3CXtY3Sqtlc2OC+W55J2HznuYGVKlwI
KUnuJO8fkK33oGDFMi5UnTqdSd4/QFU7KURdkwtHO28EkvcPCFpWdmy5DheC
80eP/iPMnNe7aZk+uZ8fQ/cnYYeZU6YvNeLCUB5zbg7hMrHFrWrmXCgffDQZ
Qng9Sy9V1YZcH53Y4EQ4auDArcX2XLhvZZCnSViq3dt20XFy/b2TL4ZJPTzq
wjQWunIhvEoj8C3h5tIUgbIXF1ZERnnZETbKr/ixwIcL8m61ThKEk1P/xs33
58K5so69b0j9bz5baqr0iAsPpvzZVkv6pzn1tWDoORdcnWjRDoSbvNRTv7zi
QmNJ/u5u0n8tSw0lzwwu0GojEn7yKPhVkPjN5BMXTDZMWhoS9l+teX1xMReW
TLu0+x3RU7PU2t6KWi5cLfWlOxD93fZKffqqmQs2y203fyD61O5aZ36liwuO
XcM3mUS/dwp0MlaMc2FGwkJFV6JvHS/dm37yPJBJL1hFjVHQ3vlJ5+B8Htj5
DH+ZRTjIYmv/WjUecFovZS4gfupYRbdo1eZB8tW7j5SI/+537li4xZIHl7J9
jmQRf26xKK2WPcCD8mHbpMB+CnryTfx7j/DgRV7EHlviZ92nZv/C3HmQwnOP
aiL+79tj9XHoAQ/Sbss63CT5EJpf6/olggcjPffPzmujQH+VjerzGB6EXGI2
JJA8CZPcf8ckmQcw3pybQvIH8u33vSJz/uPfNcXH6og/NNqkr/zkwcB3XlJB
DQURT47kW7aSPUHszZhcNZkPnk5LRYM82F218XF0BQVPNZzHDsiQvcCBZXK4
hALDJ3/j187mQ7b38WVXiikYljhzQEqFD7aWC48+LKJgR8dZzFjNBwsLE15c
AcmLiPP3Zc34sKq36atbFgVmEjc0vgTy4emCh+uevaLgaIFuvRHZG4T07Bzp
lySfLrCul0TyYRYYWbjHUBDXf7b+axIf7gwGZKk9o4BTYX+jvJIP+g5155Uf
EH891v1ZJS8ATSstl2MXKMjbw7phsUAAOpV2x4zOU/Bjavqq6iUCOF7dfFXF
gwLeZQ3fmg0CuB7oPCPdhQJLh3mr6/cJ4OY/80JPe+J3dZbvr2cCmC8uZmJG
p0ChI221XZwAOvbUPonRp2DFs7MNzYkCqGs8MefvFgqsZ/SubvkkAMkUqZhj
6yh4O1LX0NYqgHvrVcVH1CjYl5um2aMmhH+DR2YfFSP6Nz3bNPxOCI2VQWEZ
H0UwGrbkQFuaEErTEm/SyTxf39LYWPlRCOfOSnaXpIog22174/tyITRd/0nL
SxABhis1nP4rhLFrWmU7H4ugurWorm+lCDJTzAJ4biKYODf3Rxv5X/n7fctL
VESw6dP3PVUpIjCtWBTnpCSCSxI3qwpyRPBTgZPDkReBIOJfZRTZG+LCtDNl
p4pAIp9RYfeH7A0x3rO7RoUwV+rMtwayN4yULX+7olgIWyKxpOo1BWN/Iudv
cRJCj1aKvnMy0U1Vxtrjh4QQWhyTIZZD9oLR2m93bIQwMHjtpU4ZBfPrFJ9m
GQshCvSvRQ5Q8OdW7tekVULw9bRfkKFEoz+QsNoqMSaAXqVfNdftafS+3Dn7
vC4KINmplj63j0Z3PjK04ccZPrx28RncM0Cj3ze9sk7pGB+iPNSf3hmm0afy
Oh/sJ/tq0PUrIxwWjT62dsr5IhM+nIhcEvN7qhh9Qom+XHc50XGtJ/+Fhhj9
MNPNoaiFB0EGitmrz4rRP1QfYm8x5sFJVZvVBkwx+sCxL2pO4lxI756aZTw6
hR62Y/quyiMs2DVbUv2emARds2DN6Xy1CbiwS2dTIk2S3uuZV1L8ZATK345b
l/Ak6VE5Nnml4f3g7MWzXTx9Kv1ie1Op6oMOeL5Dh7d3qjQ9/qL924VRNZD4
Yf+TwhnS9Cypo1oLbWsgd85VHY1Z0vSSge9nlGbVQENvkZtonjRdZqqek+BW
NcwKsOh+u0qafu3CF/U5jVUQ8PV0hXC3NP3uwNwLj89/A8+dL2MSHknTpd1i
Zna8KYKbKV/0FJ5J0y1/Nf5un18EIUr9TT7R0vT5/j/PNwcz4MMfLUXrN9L0
EH8Fu5u9hdB/J/+OIIc8j4/WaJJPHjiUNXpY/Zam9yQ+Vg9/lwZntfkz89ul
6ctc3c1nP0wFn6eLktR7pOk5YZkVqn+T4ZnziV7+oDR9za5n0ZPXE6FeeuLg
G5E0vWBHbJ5h4kvo9pjLniU+jb5IY5ferIEYGG/679HVqdPog0ynxw9vRILc
O98qy1nT6EENf05dTAyFRfLxZz7NnkZ/It++pORGEGheLpVWnz+NrvnG2yk8
8SbodQ68Dlk4jb4w9uyN3MRz8L/vW/T/fd/a9n8S3AsY
               "]]}}}}, {
          ImageSize -> 40, PlotRange -> {{-4, 4}, {-4, 4}}, 
           PlotRangePadding -> {0.2, 0.2}}], "Sine"], $CellContext`triangle -> 
       Tooltip[
         Graphics[{{
            GrayLevel[0.85], 
            Disk[{0, 0}, 4], 
            GrayLevel[0], 
            Circle[{0, 0}, 4]}, {{{}, {}, {
              Hue[0.67, 0.6, 0.6], 
              RGBColor[1, 0, 0], 
              Line[CompressedData["
1:eJxlyn0slAEcB/A7UWdtR4f03Jm6SoQa8pK6hi6KMRSNUTsnL9maS1Zt4Win
tyNdWVPcLRElrsN52Yzfg4ZU3NkNmzhdmpPL24TnuZen6+/++O77/WxfJjf7
fJoFiURyN+dfR4RT2XqmNWqeY+hCcc/JtrwVirPZLDpPjVwBT+aieDfdbElF
VSuSC1RscMubZvbXiRYxIgDl2yJppoXZaZvdT5FySKD8QcY1FJTkdZ9ditRC
xuDUiqyGgnIcou89QuQgCH0nSXehoDxKq+tD5CNcV+G0Z3Y7UE5i9YeVVRUM
X6Jr5+y2o7ZEUfJZZzUYexpkJxAr1C12SdsvnIMfLauiWGtLNHckMKhifQH8
q7erSnduQ+3lu2bI5GVg7R87Ktwio3IN+8soaw2c7lDzS36RUDRLzEjUrYOi
yjshfZqAtUOnbJqubcJoZuu8X5cRDFvvbRkuONQdVh6P6daDD8FpvyA1QKZr
c29hmx7ORaF3QzsN4O4iimhu0gOncm90QJ8BpPtik2kSPZQEzMzTxw3Q4ajk
qwr0MJedhGiMBhiyUg4kBOuhYjY+jxdlhMXviriUfhwMvRGnS3VGkKpl06Iu
HGi2DVT+hhF400/S+1pxcLtsPcUjmWB9Mub2gVocLuKDN+LsTWAYVVT+FOAg
8wl9w2CZgNqj0FwNw4FbE0RpEJrA66WCl/MJgyGB78iAOwEPIm9aYCgG/jaf
LUR+BMyaGOX8Tgxev0gJSAomoCw1o6OkHoMC6eNXy/EELHmajHXF5v+kNmdP
EQFh6pqyI/kY1HL59RohARJROFOei4Htb4dvjc8JiNooP9ObisESmR0a0khA
I3gIp0LMfw+xY9YEAZY5SiduIAa09mORvhoCkg/ekmq9MCgMHi406QiQjzsF
Z7thoBvmtA1t/u+/1Fx8VA==
               "]], 
              Line[CompressedData["
1:eJxljHs0lAkYxke0ndMSOYpE0dHuLNIkyRm2dyu1dpM0fRZ1IlNZK8tKLmW3
jJWkOrY2upDKjGhjJmsqufS2oqZyS2MT04lZl82Oy2Dm+8bMfN/av/eP5/zO
c87veZz5CbyDc1gsVuBs/iPfN2b/j7Y69HE63F8yyWDtqIVmjqUOZfm9Fd3D
DMbywu2saApVGeLN/p0MNpoxtws0FGZobS2PPWPQ/oHI13GUQps4QY+knsHn
SyciXBUUeoUSiUvLGGQPZpf61876q2aKJ9MZzLjkvv5l1awv3B/LTmSw+6tO
2c7bFIrsWtdFRDN4SuyoirhMocz0RsvzYAaHUqWeR1MotOrZMnNjJYOi+Uqs
9Jz1s8+H7Gin0Znzec/iOyTK3rPNK1bQGMj7UOAhJDHHz6Tyqh2NaUfyd20t
JDHwytvtpxfQ2FYz2pJ8hsQOXm5e9IwRj20sRvkhEuXN/1g7dxpRzmNEF9xJ
HLgjXlIgMGJ28h8JC8RaNKR6fZrRZ8CR2i1zP6rSIMfqi01EsR6XHqqLSj07
hU2uObHKvyikX1iXTiSqUdVc5eTtrcUkMCe+I8dw2j3fE+9PYc3a1seaeyPo
dPy2t4eJGiULn961bRjCAO9x99IpFSZxr5huSFDiZf/Rjodpw8g9GRnwd6wC
OYT4l3BbJY7HGPJO5MixT9tsKXPpwZ+bCrlAPUOWYvDch6w2/LPOr+k307vI
4jlIe/dLMdJ9q5E4LwbW/PSuxuRq6A8IC4kvlsHjfpNlgrB2mJaAxM5XDhPj
dTpu41voKV0Wr+5QAEf4tjUoTAnp8XUBIdeVwN5ubaq5NwxhN1aHFp0bgrTI
NxmcByqIPvV8zvuOEagPcrQItlbDkyw3t7Mvx0DhvOh459UpiFg42GgTroa4
I25ReYu1MMV9tqE/ZQpaFFa8aBkFkgQLHf8HDRBH/YbnBepB9ZpDTqZpwOGA
rGvsGz24+hCaTIEGBoKIpq4oPYhYheqSCxpIc4m7KUzVw9Xz7BGlVANF7YV7
QKiHrOrNvXydBlQr9e0pM3rYTR5t4GdqIavzYc1guQEu7blWN5mrheCGLWUt
1QaQ4+OHmb9qwa78VX71IwPsyJl3v0SkhYqfPhwWyA3gvyRfrHyqhQ72klWO
LCOs9r17nf8xCU4n0m4SoUYwOzEk4F8kQeq2PvfJXBrik0xDoopIIFYTQrUl
Dd3fOrH3iUhQeSbWL7enoSJ4d9te6eyee2cs3YMGYkWbfbichJyA5bu8QmkQ
Nt+r3mFDQdjBeQ6l5TSY13ZmBzlQMBHjsu717zSkiMfDt7tQcDZuY5BJAw1f
X/qMtc2Lgvqk9Iy9r2iYjLkWuJWgwCVzfGDRDA2bzE8O+l2kgCp+U5m9jYEK
VkmNbxEFF0umn0pDGFiseXSGK6KAc2thnzKSgZF31BofKQX7KrdZwxEGLkji
jq+VUyCrwxSyiAGD8PROTwUFB1CRt7KMgejLt1zWDFBg9kRXvquKAa6g74XH
9Ozfi7W9kmYGRMnGa6sMFHS0Bk+/a2dgQax9oruZDuJefW9h3sNAWsR6fzdz
HZh15X7CHWBAySNsXW10UNRdBjFjDAR+mTjCdtCBj6IprID6f/8XHaihrw==

               "]], 
              Line[CompressedData["
1:eJwVzH1Qy3EcB/BftdqvSIvaQo9ktkoNu9A6n+9CKU89qFAceep0Zedad65M
oXZyR09KxCFLD9cateTqqNMq0+V0xXB+cTUmEon121Y/P3+8732ve9+9fVJO
xh61xjBMQOd/ewsairgBJFx1t5I6/qag0Lfv8AohCWa3saQRAwXTbvpg31AS
Drr2hj0gKDjgaO2wfDMJPc71/PNDFKz5K1J57yahxEFi5HZSUDW+57xXMgkz
dnHEjJoCuxFpgucREvbbBGu0DRS8622yLM0kgW8xl2RUUJBXuTySU0ZC14Q8
sDWDggCmwjJxgwQ/yV3/9iMU6DK5qu5qEoqnOnid+ygIjOZzTjWTkGL8tUwb
Tv/ZBen7B0lgWCVzCE8KhJkheeecTRDuIsDsXs7B550xjycum+BFiO5VfNAc
bGOc5XdfNMOwnCf9M2kBZWS67kfdLLDmmxqXiEyw/vpTzYCCAt/k/DBpixGU
KYOI/RlDyeXi52rjNBzz3u0vnrZCwpiRD+0RU/BwlKkO/2mN+prSq35cmoQo
F1vuJSsGyiqWHVrtPg5ZUcLgeswW6RxsCALXw/PaqViNyRZJ8qOyOE4fITXT
lODlwESq2i/6dbHDcGOL0BTHxFHft7CqAFkP1DcmVjyZh6Ot0dsn1/r2QJtr
tpDPwpGuJT5MpNXAa31Xxpwb7TOphki2BlgFu0Zr/XCEsS4LjyufQUHPif7Z
HTjiCd/23yE64VTEnVv3y3D0c4YwrZK1Ql5Tt2hhJe2uX7dDtWoo4hh0OTdp
FzIitrHV0PglcFFsDY68PfxKU5XNYJB3yC2PcITEUv9qQgUH+t5IYt7T+yJO
m0BWA+kCs2PHCG1FKGMnWwE51zwbuGO016VEpymroTL1qN78HUe5SY0GBXEb
hvDfe2vmaEfI1wTLymFUwjaybOxRbtqgVqIshSndhrJsJu0rHocbiCJwqssd
iGbRVh1fKZYVgKfzvbR2F9ozs4mtRC4EnO7FuYvtEXaB55woywLRp3FFkQdt
Xv3YOdkxiIpcsMnsQxvDBju/5m/8B64DZk8=
               "]]}, {}}, {{}, {}, {}}}}, {
          ImageSize -> 40, PlotRange -> {{-4, 4}, {-4, 4}}, 
           PlotRangePadding -> {0.2, 0.2}}], 
         "Triangle"], $CellContext`sawtooth -> Tooltip[
         Graphics[{{
            GrayLevel[0.85], 
            Disk[{0, 0}, 4], 
            GrayLevel[0], 
            Circle[{0, 0}, 4]}, {{{}, {}, {
              Hue[0.67, 0.6, 0.6], 
              RGBColor[1, 0, 0], 
              Line[CompressedData["
1:eJwt1P8303scwHHM8lmikSaVFZWTOO6Uq5rq9b51uSjdiEunG9fuabnkS+qG
o5vcq+imk8o9F8lVvuTLzahcdc3en4qG2xdpIVadWdaaG5sZtrHPvfec+8Pz
PP+DhwsvOeyghZmZWci//ffgINsdRhcG6QUsFUVR2K/5hJpgM8hk/ao8vYHC
ni6jV1lLGWTTbW83rY7CtnrxjLc9g9ywNoSnGKXw85rshjgLBrnRLmfwcT+F
owidU98wQSK5prtYQOFD4iF1YwVB7s19Ur8hhsI5/rVl/DUEmfEsJ/GQyISP
SAz2lxdZkX0Sa9X92DncfWCp8t2ieSSbTHbYuHwWz4nqGrlOdLIloZ2+8LUB
y29pLoYyLElevrf61Y967HttnuS8NY00XsrMwzCDt7j2ep2bMSerbd84Fcmm
8PJM2x/yVWZkebB36ouzOtxT6h3Ff03h3MOx6e5Bk/hZ3O33n7bO4WxaXVrq
xwlc7f580542Iz506tnqvhoN5pT0pKR26XFp20hRabwau3C2DrLqp3Hn27UL
fncdw6o//enzmnR4PRNtDy8bxcsSWmPT8rWYXJcXPyxXYlO3fZX6iAaPdTSt
9PVV4KOwIPy76TE86fnLevyHHN/d8ITUNasw+2Str5e5DAvsHjU6tinwLt9x
zyqtFB/lFtO2JQ/j8s8/9txL78fc0zGByngp5oQ3FOxz7MXjcbMXsvIkWDnV
sbBzdTf+qf0KF2bEmCkdOf8hR4T7Wre019EaMQpbfmfo20oc4xkwF36xAUhG
5ssH31eALDAqIqmsE0iZOTs7CsOkAARL/CSgHm/Vcx90wWAVO0nTIwVOxasn
u6N6ITOpNTDit2HghNjTdM39EFX+SWTpeQWkx/Sf4rRIgZ/bZfG2RwXC3c42
e+xl8DDHwyP/rzGQuiw+2Vsih2i7kQcO+zRw+JhH7AWWArRc8TbZcS08ljLD
+J1KECTb6HkpOgjP2PLeatcoWGYpsnmF03DHY+PPD+ljkF28KsixUA9shlBZ
GaiGnZZZ7u1njcASJvjT8zTQEJQ4MFY7Bwa9RW3q8ARsKsEdT6soGAtti+5Y
MwkNvF7EUpihXp+YZWtydMBfGe7x2aQ54kcy7VylU3BLbtUcoLZAtoXvoiyd
ZyDYge52ztwSXd9ffkObrofjwT6+dWZ0FLw1K7CzzQBdNRNhHQY6uh6d6Mqd
NULcMcNXK+ZbIdX8HbR7EXNwxd/HsNeKQAHP/Xydi0xQdzPyV5E1gWa51veF
V01wd3GmjzuTQLcqB3d+XWGCvpH7SaYlBHJNz4i90mAC5pkv5TXrCGS2oiXf
qcMEZx7FP54LIZDo8Hr54gkTpH5xrexGIYE2Ee4FtrsoyBa0+9kXE0h9ZGZp
QygFBY7KgRNXCVQzJK4KiaTg5nuvRWHVBGIJ+K35PAqUucLc2RYCTUVUKuZn
UBDd2Z8SOkSgOxUrtlpVU5DIMdoI3xIo3mZcXF1PwYkidr3bOwKtThOFBTRR
UBx3cMT4N4EuBR+IOy2kQEJo91WbCJSqKblMe0GBPIU1zaQx0Lr98eyKAQom
BjYXZlox0HD75trtbyhYWHvq6R4mA4UVDYiyP1DAtqtMaHVgIMKiJshlnALP
DDHh5sRAooQ0CTlJgZ9MVVXgzEDpLwNivjFQ8L9f6H+/4B94d3dM
               "]]}}}}, {
          ImageSize -> 40, PlotRange -> {{-4, 4}, {-4, 4}}, 
           PlotRangePadding -> {0.2, 0.2}}], "Sawtooth"]}}, {{
       Hold[$CellContext`ax$$], 0.9, "Amplitude"}, 0, 1}, {{
       Hold[$CellContext`\[Omega]x$$], 3, "Frequency"}, 1, 12, 1}, {{
       Hold[$CellContext`\[Phi]x$$], 0, "Phase"}, 0, 2 Pi}, {
      Hold[
       Dynamic[
        TableForm[{{
           Button[$CellContext`speakerIcon, 
            EmitSound[
             Play[
             Sin[Pi $CellContext`t] $CellContext`fx$$[((($CellContext`f0 \
$CellContext`\[Omega]x$$) 2) Pi) $CellContext`t], {$CellContext`t, 0, 1}]]], 
           
           Plot[$CellContext`ax$$ \
$CellContext`fx$$[(($CellContext`\[Omega]x$$ 2) Pi) ($CellContext`t/
                5) + $CellContext`\[Phi]x$$], {$CellContext`t, 0, 5}, 
            PlotRange -> {-1, 1}, 
            PlotLabel -> $CellContext`makePlotlabel[
             "\!\(\*SubscriptBox[\(f\), \(x\)]\)", $CellContext`\[Omega]x$$ \
$CellContext`f0, " Hz"], AxesLabel -> {"t/ms", ""}, ImageSize -> 160]}}]]], 
      Manipulate`Dump`ThisIsNotAControl}, {
      Hold[
       Style["Vertical", 12, Bold, TextAlignment -> Center]], 
      Manipulate`Dump`ThisIsNotAControl}, {{
       Hold[$CellContext`fy$$], Sin, "Waveform"}, {Sin -> Tooltip[
         Graphics[{{
            GrayLevel[0.85], 
            Disk[{0, 0}, 4], 
            GrayLevel[0], 
            Circle[{0, 0}, 4]}, {{{}, {}, {
              Hue[0.67, 0.6, 0.6], 
              RGBColor[1, 0, 0], 
              Line[CompressedData["
1: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
Ep41Kk7/cZGtP1bSSth+2cXkfm0uGq7oUhgnnNmgQndfycXEXaUnhIRnBH6u
mVzMRebl6EKKsJOe8zEfJS4+ljm+kEs4b2jm5BQ5Lia1qfj9JazwIiMgUIqc
x7JisJrwaeuD82aJOMgyuXw4hfBnCepdxCQHU7TX1PsTXpATr7dwiIPtrAlL
K8KeLrsqX/UQlm2pm024XHnUYVULB195sOx/kPOrVj0eTa3j4MentoO+hC/5
6vlt/s7BbXcV/DQIV6/vVCz8zMGWL9sXlZP6ruwNeG2Ux8HiA1OKjhD2faK5
+XsaB2Nq3U4Pkf40mdaWWb3j4MMdbxd4EtYWXLRresHBZaY1NUOkv3eSFw46
POWgGVc25CjhtqPF13ofckhf7u77RvSxSdFFzvUOBwuOuyxZTbjvYub6yxc4
6F2gUFfDIXpYZfeFOkvOf1s/R4lwRAu1L+AEBw18HryyIXrcYWB2OdyGg76H
7j7OmCT9nd6FH9ZzcM1Lt17JcdLf/DtWOqs4+J7tJC9B/GHjvqY7T42DjulX
d3KJn8TrL0mVzeLgqI5JXRnxm1O03O6uYTZWmSl7CvpJfyyy2pz72KgmPcJO
/0P6M+WQx0grG9du9Q86Svz8+eSbcEEFG8VtzjW+IH5X097aPDeJjZaPbJWz
ydw0t/4bofWKjf/Oeq6lt5B6ez3ea/ycjbHhPlc/N1NYlTtU4X2Pjemhtfkp
JH+uGMRg/Rk2HnJcO6JZQ+HrY7t8Bo+xUd7WrvLSD9Kf26wtEvZsXBER1pdf
SeGKb3vSN5izcTiw7fuabxTWW1PxYZpsHDy32S39M4WUV5Jj4jI2XkhUWMcg
ebjqyf5Fn1XI+WLC138tJP38nfJkTIaNLcwLE3kkT9ccPxpkOcTCqWOFV3am
UxjgXeQum8zCj7wTc4ZiKUx7clZT/Q0La64n026QfG/5OP/v1hgWVk3/b8O0
5xSuF51zOvuAhcUnr3lIkfnQHrBkX4UbCytGZQ7H3yN58PSWbtBaFr5gfX7g
5k3yJm+HpFTaJJbeldEzMKQwKTTn2/m3k/hR2Xv5IzLfXJ01QjpjJ/HFDu15
bXoUDs2ZqVzwYBIX3+xesJ/Mx1GPem0v10ls80/LaF1G/K9+zL5rxSS+D2Rr
bSPzdkq4b0ZhDBP9IrrTbfJFWOwyfkkzgon01Nt/g3JE6E8/vi3yPhNL9vtb
5KaLUHJ4Z7m3DxOnT1+awnlL5rupXLumHROz7+/okXssQlkqevrzOUx0TXJ0
eXZGhMpnPjleDJ7AYskun6UKIowsKzOe6T+BD2+aKDnIiHCBesPqV1cnMD9B
wylEinDn6GTV6Ql07S6Xa+EJcd5+9SB10wnUWivBkesW4mzD0PSfkhPI6ppw
/5cmRBnlU+I6N8Yx4RJb/pqpEEXfFF6PnhtD+9kdy88fFaDVU/UspdNj6JQa
9VaL7H/xJ3RLtjmN4anEyIPdVgLcRXPqDbYeQ/WFjru3GAowYmPaco0NY6jk
+uJDyHIBrnlh8caROYp5tQFdgn4+2nsHJ9ReGMVrjTRaNdlPz4OMjQt7GGvu
3D1YacdDI0O8faxvGJvbi/vUrHg4d6dnzuGfw3iYe1vMfScPc/c0LbDOGMYO
fuTA+AYeCg7Hd+q6k+tzTzS9lOGhv4++u8yfIbxWaPwoJp+LER9dg1IaBjEo
zPjuCpKLuRsqGZNZA3ho80TPwhw2psh/TVUq6MOZrKk/PNqZeF73mfg29y5s
tz6hccttDHVvHzHpP92CPtU7H224/g9HnAUPb9ytx8Y+85dlWj1468tzXeCU
oorM5ZWe9Y3Y8En/S6J4KhY2yJwU0Rh4RNNYaBOaDC7VDotSgguh0+TAPreY
MuhVVNV/fbEJmCmQMk+vHhxXpC8z7u2G5teL3MaqW0DuW+w7neZ/cNXtk8m+
2C54flk7qzhiDA68WLs/6n4frA95dcD+ExNO3imf0l49AJvvy3erl7PBXu5M
TnnHAFjEFueV17HB6omMa+boAHwf2fvhZBsb9BMsfgbO+geVgodNDybYoFD6
M0HH8h8YhJmLnizkQIFUl3nQj3+gscpp+z0PDswO4EVsrBoE8+jjjd3yXCj2
X706+PswzCq39asz4IEu9fiF+u9h2JotHvlpFw/SL9PmFg0Mw4a2k+ei9/Ig
zu0njTVtBKJ+t9nuOcEDvwM3Go6YjMCFfzVFx+/yYLtm3c0NJSPgtyfE2KmS
Bx0uW13PHhkFT0dBdag1H1QSxt/onhqFTYFzej/Y8eFAT0LnVPdRuB2hf6nY
iQ/VDgr7466PQm+a5Ozfnnxg7P1j0Bg9CmF/FAc/hfEhdmuokkHLKDT+yLu4
vYYPDvK9n2cfHIPNOwxUbE0FIBFZz7znOAZxBb9/6FsJIHHJF3Xx02PAlJWL
UD4oAPaGV0FjV8ZAzdbTqshZACG2jtZVUWPgliO188MdARQ/b+280zEGH46G
m0l+EcBK9QYa/9Q42EoHqyVsEkJVcsl6T49x+HyqVjZ4qxC8N2cd/3tpHMxW
BlU4Gwnhs8mjssbAcdg28CJtmrUQDp2xDslMGoev1euG+l2F8CC1arHbyDio
q8bdUX4phAnd0m2dFyagb6l5mpG4CL7uTd1Ren0CTPMfTXySFsFT12fmHwIm
4Fqoas9qWRFsizljdzliAsrbs79NzhNBkNisC/LZE0AL1QlcpyWCJWUHPhhM
TkD9Gun3O/eLwGrfgHLceSZUxcoN9r4SwTK3uiV3rzJhQ6rxXY+3ImAF5Gu4
3WLCG6+fSRPvRRCV+2CzbjgTknsf+3dniaBfecPe2nQmaM4yc3ApFYFv19Wg
KeNM4GaUl8j8FUGK+0yuk8ck7I1zOpKkTsFgnTZ7/NIk0Mu1pcJWUbBqi82k
381JODk4heGuRUE87flYXNgkBP7b6TxrEwWRoSsHujInofv8pGufEQX+GYa/
nbiTEORibt9zlILPSqd+jYuxYDl7bqbecQqoq0GNftNZsOOPo2zQKQquGNXU
xSmzQIGV9nWGGwXuPx0qurayYMjMTvPVFQrs2JcLnPxYICcDkmphFDw5FP1p
PIgFf5/Mmd//iIJ6ZHz0C2eBjfCq2psnFFjcnZodF8+C8IwGmanRFBjNf5zc
9ZUFS4JdttgnUOB3Lfe95w8WxPpZ/25+RwF2/k6c0sQCvavfXS3fU6CbuCRh
yV8WuDXEHFBNo2CtXmqs0ww2aJ3Ppu/No8A1ti56XJENgcEco8B8ChLF2c/9
VNiwUvLc+uxCCpZVbH0at4YNq1IDvzI/U7Dg8PeQLgs2OE8L/izxnQKJG303
nR6x4T/liXvuvyhwOy++zzGKDQYyzy05zRQ0nVJdeTSeDXqTv1Uvt1Dw3tKu
6nAmGzzNE7uc2imwWVK14GA9G5a/Pt/Z0ENB4dx/Q/tb2DAkXs1Z3EfByhnS
RbY9bDiyXTDP8Q8FggmDUzZMNuQ9u+35/S8Fr0qyMixmc0ARFf3owxTIkEGw
R4UDQ3rPGk1HKLiQPHJw9zIOyFfGbzAbpWDXEw2amQ4H4udbiDaOU5B5z7jO
VJ8D3sbnXRdPULDI99gbEyPCp1d20JgUjDtHmxvbcCD6+MnGpEkK7A/nLd5h
zwGbKH87bxYFX60axw2Pc8DtgUPXJjbRj678MwMvDqhYBVAvOaQ+a7Vc6T7k
/t6XH5lxSX2WmgH4c2Anz3PNEOHtMrd79R9x4FTBr9Pz+KQ+tLhcvSgOjBsI
ZOMIz50svKcbT3Iy62H2UgEFvn9/O/z3ngNns887RhMeaOWs25LJAZ2eQDk5
Ialn7RzJzfkc2PY7i3GJcOHX9U0bv3BAfHOrVzPhlZ8sknQqOJAQ+me1joiC
sBTX6xvqOSC8Vdh7m7DgVaDV+hYOhL3eHUf2bTj59M2ydT0ceB/s5yhPUVAd
XMxeO8gB6yrzpWaEdW92fNNicsBSFP3Hh3C8tzB6jYAD/6W4JL8hLHt6wTlN
CS6c9Xx9sYzwJYfNRqtluDC3ycSwi3CXtY3Sqtlc2OC+W55J2HznuYGVKlwI
KUnuJO8fkK33oGDFMi5UnTqdSd4/QFU7KURdkwtHO28EkvcPCFpWdmy5DheC
80eP/iPMnNe7aZk+uZ8fQ/cnYYeZU6YvNeLCUB5zbg7hMrHFrWrmXCgffDQZ
Qng9Sy9V1YZcH53Y4EQ4auDArcX2XLhvZZCnSViq3dt20XFy/b2TL4ZJPTzq
wjQWunIhvEoj8C3h5tIUgbIXF1ZERnnZETbKr/ixwIcL8m61ThKEk1P/xs33
58K5so69b0j9bz5baqr0iAsPpvzZVkv6pzn1tWDoORdcnWjRDoSbvNRTv7zi
QmNJ/u5u0n8tSw0lzwwu0GojEn7yKPhVkPjN5BMXTDZMWhoS9l+teX1xMReW
TLu0+x3RU7PU2t6KWi5cLfWlOxD93fZKffqqmQs2y203fyD61O5aZ36liwuO
XcM3mUS/dwp0MlaMc2FGwkJFV6JvHS/dm37yPJBJL1hFjVHQ3vlJ5+B8Htj5
DH+ZRTjIYmv/WjUecFovZS4gfupYRbdo1eZB8tW7j5SI/+537li4xZIHl7J9
jmQRf26xKK2WPcCD8mHbpMB+CnryTfx7j/DgRV7EHlviZ92nZv/C3HmQwnOP
aiL+79tj9XHoAQ/Sbss63CT5EJpf6/olggcjPffPzmujQH+VjerzGB6EXGI2
JJA8CZPcf8ckmQcw3pybQvIH8u33vSJz/uPfNcXH6og/NNqkr/zkwcB3XlJB
DQURT47kW7aSPUHszZhcNZkPnk5LRYM82F218XF0BQVPNZzHDsiQvcCBZXK4
hALDJ3/j187mQ7b38WVXiikYljhzQEqFD7aWC48+LKJgR8dZzFjNBwsLE15c
AcmLiPP3Zc34sKq36atbFgVmEjc0vgTy4emCh+uevaLgaIFuvRHZG4T07Bzp
lySfLrCul0TyYRYYWbjHUBDXf7b+axIf7gwGZKk9o4BTYX+jvJIP+g5155Uf
EH891v1ZJS8ATSstl2MXKMjbw7phsUAAOpV2x4zOU/Bjavqq6iUCOF7dfFXF
gwLeZQ3fmg0CuB7oPCPdhQJLh3mr6/cJ4OY/80JPe+J3dZbvr2cCmC8uZmJG
p0ChI221XZwAOvbUPonRp2DFs7MNzYkCqGs8MefvFgqsZ/SubvkkAMkUqZhj
6yh4O1LX0NYqgHvrVcVH1CjYl5um2aMmhH+DR2YfFSP6Nz3bNPxOCI2VQWEZ
H0UwGrbkQFuaEErTEm/SyTxf39LYWPlRCOfOSnaXpIog22174/tyITRd/0nL
SxABhis1nP4rhLFrWmU7H4ugurWorm+lCDJTzAJ4biKYODf3Rxv5X/n7fctL
VESw6dP3PVUpIjCtWBTnpCSCSxI3qwpyRPBTgZPDkReBIOJfZRTZG+LCtDNl
p4pAIp9RYfeH7A0x3rO7RoUwV+rMtwayN4yULX+7olgIWyKxpOo1BWN/Iudv
cRJCj1aKvnMy0U1Vxtrjh4QQWhyTIZZD9oLR2m93bIQwMHjtpU4ZBfPrFJ9m
GQshCvSvRQ5Q8OdW7tekVULw9bRfkKFEoz+QsNoqMSaAXqVfNdftafS+3Dn7
vC4KINmplj63j0Z3PjK04ccZPrx28RncM0Cj3ze9sk7pGB+iPNSf3hmm0afy
Oh/sJ/tq0PUrIxwWjT62dsr5IhM+nIhcEvN7qhh9Qom+XHc50XGtJ/+Fhhj9
MNPNoaiFB0EGitmrz4rRP1QfYm8x5sFJVZvVBkwx+sCxL2pO4lxI756aZTw6
hR62Y/quyiMs2DVbUv2emARds2DN6Xy1CbiwS2dTIk2S3uuZV1L8ZATK345b
l/Ak6VE5Nnml4f3g7MWzXTx9Kv1ie1Op6oMOeL5Dh7d3qjQ9/qL924VRNZD4
Yf+TwhnS9Cypo1oLbWsgd85VHY1Z0vSSge9nlGbVQENvkZtonjRdZqqek+BW
NcwKsOh+u0qafu3CF/U5jVUQ8PV0hXC3NP3uwNwLj89/A8+dL2MSHknTpd1i
Zna8KYKbKV/0FJ5J0y1/Nf5un18EIUr9TT7R0vT5/j/PNwcz4MMfLUXrN9L0
EH8Fu5u9hdB/J/+OIIc8j4/WaJJPHjiUNXpY/Zam9yQ+Vg9/lwZntfkz89ul
6ctc3c1nP0wFn6eLktR7pOk5YZkVqn+T4ZnziV7+oDR9za5n0ZPXE6FeeuLg
G5E0vWBHbJ5h4kvo9pjLniU+jb5IY5ferIEYGG/679HVqdPog0ynxw9vRILc
O98qy1nT6EENf05dTAyFRfLxZz7NnkZ/It++pORGEGheLpVWnz+NrvnG2yk8
8SbodQ68Dlk4jb4w9uyN3MRz8L/vW/T/fd/a9n8S3AsY
               "]]}}}}, {
          ImageSize -> 40, PlotRange -> {{-4, 4}, {-4, 4}}, 
           PlotRangePadding -> {0.2, 0.2}}], "Sine"], $CellContext`triangle -> 
       Tooltip[
         Graphics[{{
            GrayLevel[0.85], 
            Disk[{0, 0}, 4], 
            GrayLevel[0], 
            Circle[{0, 0}, 4]}, {{{}, {}, {
              Hue[0.67, 0.6, 0.6], 
              RGBColor[1, 0, 0], 
              Line[CompressedData["
1:eJxlyn0slAEcB/A7UWdtR4f03Jm6SoQa8pK6hi6KMRSNUTsnL9maS1Zt4Win
tyNdWVPcLRElrsN52Yzfg4ZU3NkNmzhdmpPL24TnuZen6+/++O77/WxfJjf7
fJoFiURyN+dfR4RT2XqmNWqeY+hCcc/JtrwVirPZLDpPjVwBT+aieDfdbElF
VSuSC1RscMubZvbXiRYxIgDl2yJppoXZaZvdT5FySKD8QcY1FJTkdZ9ditRC
xuDUiqyGgnIcou89QuQgCH0nSXehoDxKq+tD5CNcV+G0Z3Y7UE5i9YeVVRUM
X6Jr5+y2o7ZEUfJZZzUYexpkJxAr1C12SdsvnIMfLauiWGtLNHckMKhifQH8
q7erSnduQ+3lu2bI5GVg7R87Ktwio3IN+8soaw2c7lDzS36RUDRLzEjUrYOi
yjshfZqAtUOnbJqubcJoZuu8X5cRDFvvbRkuONQdVh6P6daDD8FpvyA1QKZr
c29hmx7ORaF3QzsN4O4iimhu0gOncm90QJ8BpPtik2kSPZQEzMzTxw3Q4ajk
qwr0MJedhGiMBhiyUg4kBOuhYjY+jxdlhMXviriUfhwMvRGnS3VGkKpl06Iu
HGi2DVT+hhF400/S+1pxcLtsPcUjmWB9Mub2gVocLuKDN+LsTWAYVVT+FOAg
8wl9w2CZgNqj0FwNw4FbE0RpEJrA66WCl/MJgyGB78iAOwEPIm9aYCgG/jaf
LUR+BMyaGOX8Tgxev0gJSAomoCw1o6OkHoMC6eNXy/EELHmajHXF5v+kNmdP
EQFh6pqyI/kY1HL59RohARJROFOei4Htb4dvjc8JiNooP9ObisESmR0a0khA
I3gIp0LMfw+xY9YEAZY5SiduIAa09mORvhoCkg/ekmq9MCgMHi406QiQjzsF
Z7thoBvmtA1t/u+/1Fx8VA==
               "]], 
              Line[CompressedData["
1:eJxljHs0lAkYxke0ndMSOYpE0dHuLNIkyRm2dyu1dpM0fRZ1IlNZK8tKLmW3
jJWkOrY2upDKjGhjJmsqufS2oqZyS2MT04lZl82Oy2Dm+8bMfN/av/eP5/zO
c87veZz5CbyDc1gsVuBs/iPfN2b/j7Y69HE63F8yyWDtqIVmjqUOZfm9Fd3D
DMbywu2saApVGeLN/p0MNpoxtws0FGZobS2PPWPQ/oHI13GUQps4QY+knsHn
SyciXBUUeoUSiUvLGGQPZpf61876q2aKJ9MZzLjkvv5l1awv3B/LTmSw+6tO
2c7bFIrsWtdFRDN4SuyoirhMocz0RsvzYAaHUqWeR1MotOrZMnNjJYOi+Uqs
9Jz1s8+H7Gin0Znzec/iOyTK3rPNK1bQGMj7UOAhJDHHz6Tyqh2NaUfyd20t
JDHwytvtpxfQ2FYz2pJ8hsQOXm5e9IwRj20sRvkhEuXN/1g7dxpRzmNEF9xJ
HLgjXlIgMGJ28h8JC8RaNKR6fZrRZ8CR2i1zP6rSIMfqi01EsR6XHqqLSj07
hU2uObHKvyikX1iXTiSqUdVc5eTtrcUkMCe+I8dw2j3fE+9PYc3a1seaeyPo
dPy2t4eJGiULn961bRjCAO9x99IpFSZxr5huSFDiZf/Rjodpw8g9GRnwd6wC
OYT4l3BbJY7HGPJO5MixT9tsKXPpwZ+bCrlAPUOWYvDch6w2/LPOr+k307vI
4jlIe/dLMdJ9q5E4LwbW/PSuxuRq6A8IC4kvlsHjfpNlgrB2mJaAxM5XDhPj
dTpu41voKV0Wr+5QAEf4tjUoTAnp8XUBIdeVwN5ubaq5NwxhN1aHFp0bgrTI
NxmcByqIPvV8zvuOEagPcrQItlbDkyw3t7Mvx0DhvOh459UpiFg42GgTroa4
I25ReYu1MMV9tqE/ZQpaFFa8aBkFkgQLHf8HDRBH/YbnBepB9ZpDTqZpwOGA
rGvsGz24+hCaTIEGBoKIpq4oPYhYheqSCxpIc4m7KUzVw9Xz7BGlVANF7YV7
QKiHrOrNvXydBlQr9e0pM3rYTR5t4GdqIavzYc1guQEu7blWN5mrheCGLWUt
1QaQ4+OHmb9qwa78VX71IwPsyJl3v0SkhYqfPhwWyA3gvyRfrHyqhQ72klWO
LCOs9r17nf8xCU4n0m4SoUYwOzEk4F8kQeq2PvfJXBrik0xDoopIIFYTQrUl
Dd3fOrH3iUhQeSbWL7enoSJ4d9te6eyee2cs3YMGYkWbfbichJyA5bu8QmkQ
Nt+r3mFDQdjBeQ6l5TSY13ZmBzlQMBHjsu717zSkiMfDt7tQcDZuY5BJAw1f
X/qMtc2Lgvqk9Iy9r2iYjLkWuJWgwCVzfGDRDA2bzE8O+l2kgCp+U5m9jYEK
VkmNbxEFF0umn0pDGFiseXSGK6KAc2thnzKSgZF31BofKQX7KrdZwxEGLkji
jq+VUyCrwxSyiAGD8PROTwUFB1CRt7KMgejLt1zWDFBg9kRXvquKAa6g74XH
9Ozfi7W9kmYGRMnGa6sMFHS0Bk+/a2dgQax9oruZDuJefW9h3sNAWsR6fzdz
HZh15X7CHWBAySNsXW10UNRdBjFjDAR+mTjCdtCBj6IprID6f/8XHaihrw==

               "]], 
              Line[CompressedData["
1:eJwVzH1Qy3EcB/BftdqvSIvaQo9ktkoNu9A6n+9CKU89qFAceep0Zedad65M
oXZyR09KxCFLD9cateTqqNMq0+V0xXB+cTUmEon121Y/P3+8732ve9+9fVJO
xh61xjBMQOd/ewsairgBJFx1t5I6/qag0Lfv8AohCWa3saQRAwXTbvpg31AS
Drr2hj0gKDjgaO2wfDMJPc71/PNDFKz5K1J57yahxEFi5HZSUDW+57xXMgkz
dnHEjJoCuxFpgucREvbbBGu0DRS8622yLM0kgW8xl2RUUJBXuTySU0ZC14Q8
sDWDggCmwjJxgwQ/yV3/9iMU6DK5qu5qEoqnOnid+ygIjOZzTjWTkGL8tUwb
Tv/ZBen7B0lgWCVzCE8KhJkheeecTRDuIsDsXs7B550xjycum+BFiO5VfNAc
bGOc5XdfNMOwnCf9M2kBZWS67kfdLLDmmxqXiEyw/vpTzYCCAt/k/DBpixGU
KYOI/RlDyeXi52rjNBzz3u0vnrZCwpiRD+0RU/BwlKkO/2mN+prSq35cmoQo
F1vuJSsGyiqWHVrtPg5ZUcLgeswW6RxsCALXw/PaqViNyRZJ8qOyOE4fITXT
lODlwESq2i/6dbHDcGOL0BTHxFHft7CqAFkP1DcmVjyZh6Ot0dsn1/r2QJtr
tpDPwpGuJT5MpNXAa31Xxpwb7TOphki2BlgFu0Zr/XCEsS4LjyufQUHPif7Z
HTjiCd/23yE64VTEnVv3y3D0c4YwrZK1Ql5Tt2hhJe2uX7dDtWoo4hh0OTdp
FzIitrHV0PglcFFsDY68PfxKU5XNYJB3yC2PcITEUv9qQgUH+t5IYt7T+yJO
m0BWA+kCs2PHCG1FKGMnWwE51zwbuGO016VEpymroTL1qN78HUe5SY0GBXEb
hvDfe2vmaEfI1wTLymFUwjaybOxRbtqgVqIshSndhrJsJu0rHocbiCJwqssd
iGbRVh1fKZYVgKfzvbR2F9ozs4mtRC4EnO7FuYvtEXaB55woywLRp3FFkQdt
Xv3YOdkxiIpcsMnsQxvDBju/5m/8B64DZk8=
               "]]}, {}}, {{}, {}, {}}}}, {
          ImageSize -> 40, PlotRange -> {{-4, 4}, {-4, 4}}, 
           PlotRangePadding -> {0.2, 0.2}}], 
         "Triangle"], $CellContext`sawtooth -> Tooltip[
         Graphics[{{
            GrayLevel[0.85], 
            Disk[{0, 0}, 4], 
            GrayLevel[0], 
            Circle[{0, 0}, 4]}, {{{}, {}, {
              Hue[0.67, 0.6, 0.6], 
              RGBColor[1, 0, 0], 
              Line[CompressedData["
1:eJwt1P8303scwHHM8lmikSaVFZWTOO6Uq5rq9b51uSjdiEunG9fuabnkS+qG
o5vcq+imk8o9F8lVvuTLzahcdc3en4qG2xdpIVadWdaaG5sZtrHPvfec+8Pz
PP+DhwsvOeyghZmZWci//ffgINsdRhcG6QUsFUVR2K/5hJpgM8hk/ao8vYHC
ni6jV1lLGWTTbW83rY7CtnrxjLc9g9ywNoSnGKXw85rshjgLBrnRLmfwcT+F
owidU98wQSK5prtYQOFD4iF1YwVB7s19Ur8hhsI5/rVl/DUEmfEsJ/GQyISP
SAz2lxdZkX0Sa9X92DncfWCp8t2ieSSbTHbYuHwWz4nqGrlOdLIloZ2+8LUB
y29pLoYyLElevrf61Y967HttnuS8NY00XsrMwzCDt7j2ep2bMSerbd84Fcmm
8PJM2x/yVWZkebB36ouzOtxT6h3Ff03h3MOx6e5Bk/hZ3O33n7bO4WxaXVrq
xwlc7f580542Iz506tnqvhoN5pT0pKR26XFp20hRabwau3C2DrLqp3Hn27UL
fncdw6o//enzmnR4PRNtDy8bxcsSWmPT8rWYXJcXPyxXYlO3fZX6iAaPdTSt
9PVV4KOwIPy76TE86fnLevyHHN/d8ITUNasw+2Str5e5DAvsHjU6tinwLt9x
zyqtFB/lFtO2JQ/j8s8/9txL78fc0zGByngp5oQ3FOxz7MXjcbMXsvIkWDnV
sbBzdTf+qf0KF2bEmCkdOf8hR4T7Wre019EaMQpbfmfo20oc4xkwF36xAUhG
5ssH31eALDAqIqmsE0iZOTs7CsOkAARL/CSgHm/Vcx90wWAVO0nTIwVOxasn
u6N6ITOpNTDit2HghNjTdM39EFX+SWTpeQWkx/Sf4rRIgZ/bZfG2RwXC3c42
e+xl8DDHwyP/rzGQuiw+2Vsih2i7kQcO+zRw+JhH7AWWArRc8TbZcS08ljLD
+J1KECTb6HkpOgjP2PLeatcoWGYpsnmF03DHY+PPD+ljkF28KsixUA9shlBZ
GaiGnZZZ7u1njcASJvjT8zTQEJQ4MFY7Bwa9RW3q8ARsKsEdT6soGAtti+5Y
MwkNvF7EUpihXp+YZWtydMBfGe7x2aQ54kcy7VylU3BLbtUcoLZAtoXvoiyd
ZyDYge52ztwSXd9ffkObrofjwT6+dWZ0FLw1K7CzzQBdNRNhHQY6uh6d6Mqd
NULcMcNXK+ZbIdX8HbR7EXNwxd/HsNeKQAHP/Xydi0xQdzPyV5E1gWa51veF
V01wd3GmjzuTQLcqB3d+XWGCvpH7SaYlBHJNz4i90mAC5pkv5TXrCGS2oiXf
qcMEZx7FP54LIZDo8Hr54gkTpH5xrexGIYE2Ee4FtrsoyBa0+9kXE0h9ZGZp
QygFBY7KgRNXCVQzJK4KiaTg5nuvRWHVBGIJ+K35PAqUucLc2RYCTUVUKuZn
UBDd2Z8SOkSgOxUrtlpVU5DIMdoI3xIo3mZcXF1PwYkidr3bOwKtThOFBTRR
UBx3cMT4N4EuBR+IOy2kQEJo91WbCJSqKblMe0GBPIU1zaQx0Lr98eyKAQom
BjYXZlox0HD75trtbyhYWHvq6R4mA4UVDYiyP1DAtqtMaHVgIMKiJshlnALP
DDHh5sRAooQ0CTlJgZ9MVVXgzEDpLwNivjFQ8L9f6H+/4B94d3dM
               "]]}}}}, {
          ImageSize -> 40, PlotRange -> {{-4, 4}, {-4, 4}}, 
           PlotRangePadding -> {0.2, 0.2}}], "Sawtooth"]}}, {{
       Hold[$CellContext`ay$$], 0.9, "Amplitude"}, 0, 1}, {{
       Hold[$CellContext`\[Omega]y$$], 1, "Frequency"}, 1, 12, 1}, {{
       Hold[$CellContext`\[Phi]y$$], 0.6, "Phase"}, 0, 2 Pi}, {
      Hold[
       Dynamic[
        TableForm[{{
           Button[$CellContext`speakerIcon, 
            EmitSound[
             Play[
             Sin[Pi $CellContext`t] $CellContext`fy$$[((($CellContext`f0 \
$CellContext`\[Omega]y$$) 2) Pi) $CellContext`t], {$CellContext`t, 0, 1}]]], 
           
           Plot[$CellContext`ay$$ \
$CellContext`fy$$[(($CellContext`\[Omega]y$$ 2) Pi) ($CellContext`t/
                5) + $CellContext`\[Phi]y$$], {$CellContext`t, 0, 5}, 
            PlotRange -> {-1, 1}, 
            PlotLabel -> $CellContext`makePlotlabel[
             "\!\(\*SubscriptBox[\(f\), \(y\)]\)", $CellContext`\[Omega]y$$ \
$CellContext`f0, " Hz"], AxesLabel -> {"t/ms", ""}, ImageSize -> 160]}}]]], 
      Manipulate`Dump`ThisIsNotAControl}, {{
       Hold[$CellContext`tmax$$], 1, "fraction of cycle"}, 
      Rational[1, 100000], 1}}, Typeset`size$$ = {500., {265., 269.}}, 
    Typeset`update$$ = 0, Typeset`initDone$$, Typeset`skipInitDone$$ = 
    False, $CellContext`fx$184$$ = False, $CellContext`ax$189$$ = 
    0, $CellContext`\[Omega]x$190$$ = 0, $CellContext`\[Phi]x$191$$ = 
    0, $CellContext`fy$192$$ = False, $CellContext`ay$193$$ = 
    0, $CellContext`\[Omega]y$194$$ = 0, $CellContext`\[Phi]y$195$$ = 
    0, $CellContext`tmax$196$$ = 0}, 
    DynamicBox[Manipulate`ManipulateBoxes[
     1, StandardForm, 
      "Variables" :> {$CellContext`ax$$ = 0.9, $CellContext`ay$$ = 
        0.9, $CellContext`fx$$ = Sin, $CellContext`fy$$ = 
        Sin, $CellContext`tmax$$ = 1, $CellContext`\[Phi]x$$ = 
        0, $CellContext`\[Phi]y$$ = 0.6, $CellContext`\[Omega]x$$ = 
        3, $CellContext`\[Omega]y$$ = 1}, "ControllerVariables" :> {
        Hold[$CellContext`fx$$, $CellContext`fx$184$$, False], 
        Hold[$CellContext`ax$$, $CellContext`ax$189$$, 0], 
        Hold[$CellContext`\[Omega]x$$, $CellContext`\[Omega]x$190$$, 0], 
        Hold[$CellContext`\[Phi]x$$, $CellContext`\[Phi]x$191$$, 0], 
        Hold[$CellContext`fy$$, $CellContext`fy$192$$, False], 
        Hold[$CellContext`ay$$, $CellContext`ay$193$$, 0], 
        Hold[$CellContext`\[Omega]y$$, $CellContext`\[Omega]y$194$$, 0], 
        Hold[$CellContext`\[Phi]y$$, $CellContext`\[Phi]y$195$$, 0], 
        Hold[$CellContext`tmax$$, $CellContext`tmax$196$$, 0]}, 
      "OtherVariables" :> {
       Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$, 
        Typeset`animator$$, Typeset`animvar$$, Typeset`name$$, 
        Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
         Typeset`skipInitDone$$}, 
      "Body" :> ($CellContext`f0 = 200; $CellContext`a = 
        Range[-1, 1, 0.25]; $CellContext`\[Epsilon] = 10^(-5); 
       ParametricPlot[{$CellContext`ax$$ $CellContext`fx$$[$CellContext`\
\[Omega]x$$ $CellContext`t + $CellContext`\[Phi]x$$], $CellContext`ay$$ \
$CellContext`fy$$[$CellContext`\[Omega]y$$ $CellContext`t + $CellContext`\
\[Phi]y$$]}, {$CellContext`t, 
          0, ((LCM[1/$CellContext`\[Omega]x$$, 1/$CellContext`\[Omega]y$$] 2) 
           Pi) $CellContext`tmax$$}, 
         PlotRange -> {{-1.01, 1.01}, {-1.01, 1.01}}, PlotStyle -> Green, 
         Background -> Black, 
         PlotLabel -> \
$CellContext`makePlotlabel[$CellContext`\[Omega]x$$/$CellContext`\[Omega]y$$],
          AxesStyle -> White, GridLines -> {$CellContext`a, $CellContext`a}, 
         GridLinesStyle -> Dashed, ImageSize -> 500]), "Specifications" :> {
        Style[
        "Horizontal", 12, Bold, TextAlignment -> 
         Center], {{$CellContext`fx$$, Sin, "Waveform"}, {Sin -> Tooltip[
            Graphics[{{
               GrayLevel[0.85], 
               Disk[{0, 0}, 4], 
               GrayLevel[0], 
               Circle[{0, 0}, 4]}, {{{}, {}, {
                 Hue[0.67, 0.6, 0.6], 
                 RGBColor[1, 0, 0], 
                 Line[CompressedData["
1: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
Ep41Kk7/cZGtP1bSSth+2cXkfm0uGq7oUhgnnNmgQndfycXEXaUnhIRnBH6u
mVzMRebl6EKKsJOe8zEfJS4+ljm+kEs4b2jm5BQ5Lia1qfj9JazwIiMgUIqc
x7JisJrwaeuD82aJOMgyuXw4hfBnCepdxCQHU7TX1PsTXpATr7dwiIPtrAlL
K8KeLrsqX/UQlm2pm024XHnUYVULB195sOx/kPOrVj0eTa3j4MentoO+hC/5
6vlt/s7BbXcV/DQIV6/vVCz8zMGWL9sXlZP6ruwNeG2Ux8HiA1OKjhD2faK5
+XsaB2Nq3U4Pkf40mdaWWb3j4MMdbxd4EtYWXLRresHBZaY1NUOkv3eSFw46
POWgGVc25CjhtqPF13ofckhf7u77RvSxSdFFzvUOBwuOuyxZTbjvYub6yxc4
6F2gUFfDIXpYZfeFOkvOf1s/R4lwRAu1L+AEBw18HryyIXrcYWB2OdyGg76H
7j7OmCT9nd6FH9ZzcM1Lt17JcdLf/DtWOqs4+J7tJC9B/GHjvqY7T42DjulX
d3KJn8TrL0mVzeLgqI5JXRnxm1O03O6uYTZWmSl7CvpJfyyy2pz72KgmPcJO
/0P6M+WQx0grG9du9Q86Svz8+eSbcEEFG8VtzjW+IH5X097aPDeJjZaPbJWz
ydw0t/4bofWKjf/Oeq6lt5B6ez3ea/ycjbHhPlc/N1NYlTtU4X2Pjemhtfkp
JH+uGMRg/Rk2HnJcO6JZQ+HrY7t8Bo+xUd7WrvLSD9Kf26wtEvZsXBER1pdf
SeGKb3vSN5izcTiw7fuabxTWW1PxYZpsHDy32S39M4WUV5Jj4jI2XkhUWMcg
ebjqyf5Fn1XI+WLC138tJP38nfJkTIaNLcwLE3kkT9ccPxpkOcTCqWOFV3am
UxjgXeQum8zCj7wTc4ZiKUx7clZT/Q0La64n026QfG/5OP/v1hgWVk3/b8O0
5xSuF51zOvuAhcUnr3lIkfnQHrBkX4UbCytGZQ7H3yN58PSWbtBaFr5gfX7g
5k3yJm+HpFTaJJbeldEzMKQwKTTn2/m3k/hR2Xv5IzLfXJ01QjpjJ/HFDu15
bXoUDs2ZqVzwYBIX3+xesJ/Mx1GPem0v10ls80/LaF1G/K9+zL5rxSS+D2Rr
bSPzdkq4b0ZhDBP9IrrTbfJFWOwyfkkzgon01Nt/g3JE6E8/vi3yPhNL9vtb
5KaLUHJ4Z7m3DxOnT1+awnlL5rupXLumHROz7+/okXssQlkqevrzOUx0TXJ0
eXZGhMpnPjleDJ7AYskun6UKIowsKzOe6T+BD2+aKDnIiHCBesPqV1cnMD9B
wylEinDn6GTV6Ql07S6Xa+EJcd5+9SB10wnUWivBkesW4mzD0PSfkhPI6ppw
/5cmRBnlU+I6N8Yx4RJb/pqpEEXfFF6PnhtD+9kdy88fFaDVU/UspdNj6JQa
9VaL7H/xJ3RLtjmN4anEyIPdVgLcRXPqDbYeQ/WFjru3GAowYmPaco0NY6jk
+uJDyHIBrnlh8caROYp5tQFdgn4+2nsHJ9ReGMVrjTRaNdlPz4OMjQt7GGvu
3D1YacdDI0O8faxvGJvbi/vUrHg4d6dnzuGfw3iYe1vMfScPc/c0LbDOGMYO
fuTA+AYeCg7Hd+q6k+tzTzS9lOGhv4++u8yfIbxWaPwoJp+LER9dg1IaBjEo
zPjuCpKLuRsqGZNZA3ho80TPwhw2psh/TVUq6MOZrKk/PNqZeF73mfg29y5s
tz6hccttDHVvHzHpP92CPtU7H224/g9HnAUPb9ytx8Y+85dlWj1468tzXeCU
oorM5ZWe9Y3Y8En/S6J4KhY2yJwU0Rh4RNNYaBOaDC7VDotSgguh0+TAPreY
MuhVVNV/fbEJmCmQMk+vHhxXpC8z7u2G5teL3MaqW0DuW+w7neZ/cNXtk8m+
2C54flk7qzhiDA68WLs/6n4frA95dcD+ExNO3imf0l49AJvvy3erl7PBXu5M
TnnHAFjEFueV17HB6omMa+boAHwf2fvhZBsb9BMsfgbO+geVgodNDybYoFD6
M0HH8h8YhJmLnizkQIFUl3nQj3+gscpp+z0PDswO4EVsrBoE8+jjjd3yXCj2
X706+PswzCq39asz4IEu9fiF+u9h2JotHvlpFw/SL9PmFg0Mw4a2k+ei9/Ig
zu0njTVtBKJ+t9nuOcEDvwM3Go6YjMCFfzVFx+/yYLtm3c0NJSPgtyfE2KmS
Bx0uW13PHhkFT0dBdag1H1QSxt/onhqFTYFzej/Y8eFAT0LnVPdRuB2hf6nY
iQ/VDgr7466PQm+a5Ozfnnxg7P1j0Bg9CmF/FAc/hfEhdmuokkHLKDT+yLu4
vYYPDvK9n2cfHIPNOwxUbE0FIBFZz7znOAZxBb9/6FsJIHHJF3Xx02PAlJWL
UD4oAPaGV0FjV8ZAzdbTqshZACG2jtZVUWPgliO188MdARQ/b+280zEGH46G
m0l+EcBK9QYa/9Q42EoHqyVsEkJVcsl6T49x+HyqVjZ4qxC8N2cd/3tpHMxW
BlU4Gwnhs8mjssbAcdg28CJtmrUQDp2xDslMGoev1euG+l2F8CC1arHbyDio
q8bdUX4phAnd0m2dFyagb6l5mpG4CL7uTd1Ren0CTPMfTXySFsFT12fmHwIm
4Fqoas9qWRFsizljdzliAsrbs79NzhNBkNisC/LZE0AL1QlcpyWCJWUHPhhM
TkD9Gun3O/eLwGrfgHLceSZUxcoN9r4SwTK3uiV3rzJhQ6rxXY+3ImAF5Gu4
3WLCG6+fSRPvRRCV+2CzbjgTknsf+3dniaBfecPe2nQmaM4yc3ApFYFv19Wg
KeNM4GaUl8j8FUGK+0yuk8ck7I1zOpKkTsFgnTZ7/NIk0Mu1pcJWUbBqi82k
381JODk4heGuRUE87flYXNgkBP7b6TxrEwWRoSsHujInofv8pGufEQX+GYa/
nbiTEORibt9zlILPSqd+jYuxYDl7bqbecQqoq0GNftNZsOOPo2zQKQquGNXU
xSmzQIGV9nWGGwXuPx0qurayYMjMTvPVFQrs2JcLnPxYICcDkmphFDw5FP1p
PIgFf5/Mmd//iIJ6ZHz0C2eBjfCq2psnFFjcnZodF8+C8IwGmanRFBjNf5zc
9ZUFS4JdttgnUOB3Lfe95w8WxPpZ/25+RwF2/k6c0sQCvavfXS3fU6CbuCRh
yV8WuDXEHFBNo2CtXmqs0ww2aJ3Ppu/No8A1ti56XJENgcEco8B8ChLF2c/9
VNiwUvLc+uxCCpZVbH0at4YNq1IDvzI/U7Dg8PeQLgs2OE8L/izxnQKJG303
nR6x4T/liXvuvyhwOy++zzGKDQYyzy05zRQ0nVJdeTSeDXqTv1Uvt1Dw3tKu
6nAmGzzNE7uc2imwWVK14GA9G5a/Pt/Z0ENB4dx/Q/tb2DAkXs1Z3EfByhnS
RbY9bDiyXTDP8Q8FggmDUzZMNuQ9u+35/S8Fr0qyMixmc0ARFf3owxTIkEGw
R4UDQ3rPGk1HKLiQPHJw9zIOyFfGbzAbpWDXEw2amQ4H4udbiDaOU5B5z7jO
VJ8D3sbnXRdPULDI99gbEyPCp1d20JgUjDtHmxvbcCD6+MnGpEkK7A/nLd5h
zwGbKH87bxYFX60axw2Pc8DtgUPXJjbRj678MwMvDqhYBVAvOaQ+a7Vc6T7k
/t6XH5lxSX2WmgH4c2Anz3PNEOHtMrd79R9x4FTBr9Pz+KQ+tLhcvSgOjBsI
ZOMIz50svKcbT3Iy62H2UgEFvn9/O/z3ngNns887RhMeaOWs25LJAZ2eQDk5
Ialn7RzJzfkc2PY7i3GJcOHX9U0bv3BAfHOrVzPhlZ8sknQqOJAQ+me1joiC
sBTX6xvqOSC8Vdh7m7DgVaDV+hYOhL3eHUf2bTj59M2ydT0ceB/s5yhPUVAd
XMxeO8gB6yrzpWaEdW92fNNicsBSFP3Hh3C8tzB6jYAD/6W4JL8hLHt6wTlN
CS6c9Xx9sYzwJYfNRqtluDC3ycSwi3CXtY3Sqtlc2OC+W55J2HznuYGVKlwI
KUnuJO8fkK33oGDFMi5UnTqdSd4/QFU7KURdkwtHO28EkvcPCFpWdmy5DheC
80eP/iPMnNe7aZk+uZ8fQ/cnYYeZU6YvNeLCUB5zbg7hMrHFrWrmXCgffDQZ
Qng9Sy9V1YZcH53Y4EQ4auDArcX2XLhvZZCnSViq3dt20XFy/b2TL4ZJPTzq
wjQWunIhvEoj8C3h5tIUgbIXF1ZERnnZETbKr/ixwIcL8m61ThKEk1P/xs33
58K5so69b0j9bz5baqr0iAsPpvzZVkv6pzn1tWDoORdcnWjRDoSbvNRTv7zi
QmNJ/u5u0n8tSw0lzwwu0GojEn7yKPhVkPjN5BMXTDZMWhoS9l+teX1xMReW
TLu0+x3RU7PU2t6KWi5cLfWlOxD93fZKffqqmQs2y203fyD61O5aZ36liwuO
XcM3mUS/dwp0MlaMc2FGwkJFV6JvHS/dm37yPJBJL1hFjVHQ3vlJ5+B8Htj5
DH+ZRTjIYmv/WjUecFovZS4gfupYRbdo1eZB8tW7j5SI/+537li4xZIHl7J9
jmQRf26xKK2WPcCD8mHbpMB+CnryTfx7j/DgRV7EHlviZ92nZv/C3HmQwnOP
aiL+79tj9XHoAQ/Sbss63CT5EJpf6/olggcjPffPzmujQH+VjerzGB6EXGI2
JJA8CZPcf8ckmQcw3pybQvIH8u33vSJz/uPfNcXH6og/NNqkr/zkwcB3XlJB
DQURT47kW7aSPUHszZhcNZkPnk5LRYM82F218XF0BQVPNZzHDsiQvcCBZXK4
hALDJ3/j187mQ7b38WVXiikYljhzQEqFD7aWC48+LKJgR8dZzFjNBwsLE15c
AcmLiPP3Zc34sKq36atbFgVmEjc0vgTy4emCh+uevaLgaIFuvRHZG4T07Bzp
lySfLrCul0TyYRYYWbjHUBDXf7b+axIf7gwGZKk9o4BTYX+jvJIP+g5155Uf
EH891v1ZJS8ATSstl2MXKMjbw7phsUAAOpV2x4zOU/Bjavqq6iUCOF7dfFXF
gwLeZQ3fmg0CuB7oPCPdhQJLh3mr6/cJ4OY/80JPe+J3dZbvr2cCmC8uZmJG
p0ChI221XZwAOvbUPonRp2DFs7MNzYkCqGs8MefvFgqsZ/SubvkkAMkUqZhj
6yh4O1LX0NYqgHvrVcVH1CjYl5um2aMmhH+DR2YfFSP6Nz3bNPxOCI2VQWEZ
H0UwGrbkQFuaEErTEm/SyTxf39LYWPlRCOfOSnaXpIog22174/tyITRd/0nL
SxABhis1nP4rhLFrWmU7H4ugurWorm+lCDJTzAJ4biKYODf3Rxv5X/n7fctL
VESw6dP3PVUpIjCtWBTnpCSCSxI3qwpyRPBTgZPDkReBIOJfZRTZG+LCtDNl
p4pAIp9RYfeH7A0x3rO7RoUwV+rMtwayN4yULX+7olgIWyKxpOo1BWN/Iudv
cRJCj1aKvnMy0U1Vxtrjh4QQWhyTIZZD9oLR2m93bIQwMHjtpU4ZBfPrFJ9m
GQshCvSvRQ5Q8OdW7tekVULw9bRfkKFEoz+QsNoqMSaAXqVfNdftafS+3Dn7
vC4KINmplj63j0Z3PjK04ccZPrx28RncM0Cj3ze9sk7pGB+iPNSf3hmm0afy
Oh/sJ/tq0PUrIxwWjT62dsr5IhM+nIhcEvN7qhh9Qom+XHc50XGtJ/+Fhhj9
MNPNoaiFB0EGitmrz4rRP1QfYm8x5sFJVZvVBkwx+sCxL2pO4lxI756aZTw6
hR62Y/quyiMs2DVbUv2emARds2DN6Xy1CbiwS2dTIk2S3uuZV1L8ZATK345b
l/Ak6VE5Nnml4f3g7MWzXTx9Kv1ie1Op6oMOeL5Dh7d3qjQ9/qL924VRNZD4
Yf+TwhnS9Cypo1oLbWsgd85VHY1Z0vSSge9nlGbVQENvkZtonjRdZqqek+BW
NcwKsOh+u0qafu3CF/U5jVUQ8PV0hXC3NP3uwNwLj89/A8+dL2MSHknTpd1i
Zna8KYKbKV/0FJ5J0y1/Nf5un18EIUr9TT7R0vT5/j/PNwcz4MMfLUXrN9L0
EH8Fu5u9hdB/J/+OIIc8j4/WaJJPHjiUNXpY/Zam9yQ+Vg9/lwZntfkz89ul
6ctc3c1nP0wFn6eLktR7pOk5YZkVqn+T4ZnziV7+oDR9za5n0ZPXE6FeeuLg
G5E0vWBHbJ5h4kvo9pjLniU+jb5IY5ferIEYGG/679HVqdPog0ynxw9vRILc
O98qy1nT6EENf05dTAyFRfLxZz7NnkZ/It++pORGEGheLpVWnz+NrvnG2yk8
8SbodQ68Dlk4jb4w9uyN3MRz8L/vW/T/fd/a9n8S3AsY
                  "]]}}}}, {
             ImageSize -> 40, PlotRange -> {{-4, 4}, {-4, 4}}, 
              PlotRangePadding -> {0.2, 0.2}}], 
            "Sine"], $CellContext`triangle -> Tooltip[
            Graphics[{{
               GrayLevel[0.85], 
               Disk[{0, 0}, 4], 
               GrayLevel[0], 
               Circle[{0, 0}, 4]}, {{{}, {}, {
                 Hue[0.67, 0.6, 0.6], 
                 RGBColor[1, 0, 0], 
                 Line[CompressedData["
1:eJxlyn0slAEcB/A7UWdtR4f03Jm6SoQa8pK6hi6KMRSNUTsnL9maS1Zt4Win
tyNdWVPcLRElrsN52Yzfg4ZU3NkNmzhdmpPL24TnuZen6+/++O77/WxfJjf7
fJoFiURyN+dfR4RT2XqmNWqeY+hCcc/JtrwVirPZLDpPjVwBT+aieDfdbElF
VSuSC1RscMubZvbXiRYxIgDl2yJppoXZaZvdT5FySKD8QcY1FJTkdZ9ditRC
xuDUiqyGgnIcou89QuQgCH0nSXehoDxKq+tD5CNcV+G0Z3Y7UE5i9YeVVRUM
X6Jr5+y2o7ZEUfJZZzUYexpkJxAr1C12SdsvnIMfLauiWGtLNHckMKhifQH8
q7erSnduQ+3lu2bI5GVg7R87Ktwio3IN+8soaw2c7lDzS36RUDRLzEjUrYOi
yjshfZqAtUOnbJqubcJoZuu8X5cRDFvvbRkuONQdVh6P6daDD8FpvyA1QKZr
c29hmx7ORaF3QzsN4O4iimhu0gOncm90QJ8BpPtik2kSPZQEzMzTxw3Q4ajk
qwr0MJedhGiMBhiyUg4kBOuhYjY+jxdlhMXviriUfhwMvRGnS3VGkKpl06Iu
HGi2DVT+hhF400/S+1pxcLtsPcUjmWB9Mub2gVocLuKDN+LsTWAYVVT+FOAg
8wl9w2CZgNqj0FwNw4FbE0RpEJrA66WCl/MJgyGB78iAOwEPIm9aYCgG/jaf
LUR+BMyaGOX8Tgxev0gJSAomoCw1o6OkHoMC6eNXy/EELHmajHXF5v+kNmdP
EQFh6pqyI/kY1HL59RohARJROFOei4Htb4dvjc8JiNooP9ObisESmR0a0khA
I3gIp0LMfw+xY9YEAZY5SiduIAa09mORvhoCkg/ekmq9MCgMHi406QiQjzsF
Z7thoBvmtA1t/u+/1Fx8VA==
                  "]], 
                 Line[CompressedData["
1:eJxljHs0lAkYxke0ndMSOYpE0dHuLNIkyRm2dyu1dpM0fRZ1IlNZK8tKLmW3
jJWkOrY2upDKjGhjJmsqufS2oqZyS2MT04lZl82Oy2Dm+8bMfN/av/eP5/zO
c87veZz5CbyDc1gsVuBs/iPfN2b/j7Y69HE63F8yyWDtqIVmjqUOZfm9Fd3D
DMbywu2saApVGeLN/p0MNpoxtws0FGZobS2PPWPQ/oHI13GUQps4QY+knsHn
SyciXBUUeoUSiUvLGGQPZpf61876q2aKJ9MZzLjkvv5l1awv3B/LTmSw+6tO
2c7bFIrsWtdFRDN4SuyoirhMocz0RsvzYAaHUqWeR1MotOrZMnNjJYOi+Uqs
9Jz1s8+H7Gin0Znzec/iOyTK3rPNK1bQGMj7UOAhJDHHz6Tyqh2NaUfyd20t
JDHwytvtpxfQ2FYz2pJ8hsQOXm5e9IwRj20sRvkhEuXN/1g7dxpRzmNEF9xJ
HLgjXlIgMGJ28h8JC8RaNKR6fZrRZ8CR2i1zP6rSIMfqi01EsR6XHqqLSj07
hU2uObHKvyikX1iXTiSqUdVc5eTtrcUkMCe+I8dw2j3fE+9PYc3a1seaeyPo
dPy2t4eJGiULn961bRjCAO9x99IpFSZxr5huSFDiZf/Rjodpw8g9GRnwd6wC
OYT4l3BbJY7HGPJO5MixT9tsKXPpwZ+bCrlAPUOWYvDch6w2/LPOr+k307vI
4jlIe/dLMdJ9q5E4LwbW/PSuxuRq6A8IC4kvlsHjfpNlgrB2mJaAxM5XDhPj
dTpu41voKV0Wr+5QAEf4tjUoTAnp8XUBIdeVwN5ubaq5NwxhN1aHFp0bgrTI
NxmcByqIPvV8zvuOEagPcrQItlbDkyw3t7Mvx0DhvOh459UpiFg42GgTroa4
I25ReYu1MMV9tqE/ZQpaFFa8aBkFkgQLHf8HDRBH/YbnBepB9ZpDTqZpwOGA
rGvsGz24+hCaTIEGBoKIpq4oPYhYheqSCxpIc4m7KUzVw9Xz7BGlVANF7YV7
QKiHrOrNvXydBlQr9e0pM3rYTR5t4GdqIavzYc1guQEu7blWN5mrheCGLWUt
1QaQ4+OHmb9qwa78VX71IwPsyJl3v0SkhYqfPhwWyA3gvyRfrHyqhQ72klWO
LCOs9r17nf8xCU4n0m4SoUYwOzEk4F8kQeq2PvfJXBrik0xDoopIIFYTQrUl
Dd3fOrH3iUhQeSbWL7enoSJ4d9te6eyee2cs3YMGYkWbfbichJyA5bu8QmkQ
Nt+r3mFDQdjBeQ6l5TSY13ZmBzlQMBHjsu717zSkiMfDt7tQcDZuY5BJAw1f
X/qMtc2Lgvqk9Iy9r2iYjLkWuJWgwCVzfGDRDA2bzE8O+l2kgCp+U5m9jYEK
VkmNbxEFF0umn0pDGFiseXSGK6KAc2thnzKSgZF31BofKQX7KrdZwxEGLkji
jq+VUyCrwxSyiAGD8PROTwUFB1CRt7KMgejLt1zWDFBg9kRXvquKAa6g74XH
9Ozfi7W9kmYGRMnGa6sMFHS0Bk+/a2dgQax9oruZDuJefW9h3sNAWsR6fzdz
HZh15X7CHWBAySNsXW10UNRdBjFjDAR+mTjCdtCBj6IprID6f/8XHaihrw==

                  "]], 
                 Line[CompressedData["
1:eJwVzH1Qy3EcB/BftdqvSIvaQo9ktkoNu9A6n+9CKU89qFAceep0Zedad65M
oXZyR09KxCFLD9cateTqqNMq0+V0xXB+cTUmEon121Y/P3+8732ve9+9fVJO
xh61xjBMQOd/ewsairgBJFx1t5I6/qag0Lfv8AohCWa3saQRAwXTbvpg31AS
Drr2hj0gKDjgaO2wfDMJPc71/PNDFKz5K1J57yahxEFi5HZSUDW+57xXMgkz
dnHEjJoCuxFpgucREvbbBGu0DRS8622yLM0kgW8xl2RUUJBXuTySU0ZC14Q8
sDWDggCmwjJxgwQ/yV3/9iMU6DK5qu5qEoqnOnid+ygIjOZzTjWTkGL8tUwb
Tv/ZBen7B0lgWCVzCE8KhJkheeecTRDuIsDsXs7B550xjycum+BFiO5VfNAc
bGOc5XdfNMOwnCf9M2kBZWS67kfdLLDmmxqXiEyw/vpTzYCCAt/k/DBpixGU
KYOI/RlDyeXi52rjNBzz3u0vnrZCwpiRD+0RU/BwlKkO/2mN+prSq35cmoQo
F1vuJSsGyiqWHVrtPg5ZUcLgeswW6RxsCALXw/PaqViNyRZJ8qOyOE4fITXT
lODlwESq2i/6dbHDcGOL0BTHxFHft7CqAFkP1DcmVjyZh6Ot0dsn1/r2QJtr
tpDPwpGuJT5MpNXAa31Xxpwb7TOphki2BlgFu0Zr/XCEsS4LjyufQUHPif7Z
HTjiCd/23yE64VTEnVv3y3D0c4YwrZK1Ql5Tt2hhJe2uX7dDtWoo4hh0OTdp
FzIitrHV0PglcFFsDY68PfxKU5XNYJB3yC2PcITEUv9qQgUH+t5IYt7T+yJO
m0BWA+kCs2PHCG1FKGMnWwE51zwbuGO016VEpymroTL1qN78HUe5SY0GBXEb
hvDfe2vmaEfI1wTLymFUwjaybOxRbtqgVqIshSndhrJsJu0rHocbiCJwqssd
iGbRVh1fKZYVgKfzvbR2F9ozs4mtRC4EnO7FuYvtEXaB55woywLRp3FFkQdt
Xv3YOdkxiIpcsMnsQxvDBju/5m/8B64DZk8=
                  "]]}, {}}, {{}, {}, {}}}}, {
             ImageSize -> 40, PlotRange -> {{-4, 4}, {-4, 4}}, 
              PlotRangePadding -> {0.2, 0.2}}], 
            "Triangle"], $CellContext`sawtooth -> Tooltip[
            Graphics[{{
               GrayLevel[0.85], 
               Disk[{0, 0}, 4], 
               GrayLevel[0], 
               Circle[{0, 0}, 4]}, {{{}, {}, {
                 Hue[0.67, 0.6, 0.6], 
                 RGBColor[1, 0, 0], 
                 Line[CompressedData["
1:eJwt1P8303scwHHM8lmikSaVFZWTOO6Uq5rq9b51uSjdiEunG9fuabnkS+qG
o5vcq+imk8o9F8lVvuTLzahcdc3en4qG2xdpIVadWdaaG5sZtrHPvfec+8Pz
PP+DhwsvOeyghZmZWci//ffgINsdRhcG6QUsFUVR2K/5hJpgM8hk/ao8vYHC
ni6jV1lLGWTTbW83rY7CtnrxjLc9g9ywNoSnGKXw85rshjgLBrnRLmfwcT+F
owidU98wQSK5prtYQOFD4iF1YwVB7s19Ur8hhsI5/rVl/DUEmfEsJ/GQyISP
SAz2lxdZkX0Sa9X92DncfWCp8t2ieSSbTHbYuHwWz4nqGrlOdLIloZ2+8LUB
y29pLoYyLElevrf61Y967HttnuS8NY00XsrMwzCDt7j2ep2bMSerbd84Fcmm
8PJM2x/yVWZkebB36ouzOtxT6h3Ff03h3MOx6e5Bk/hZ3O33n7bO4WxaXVrq
xwlc7f580542Iz506tnqvhoN5pT0pKR26XFp20hRabwau3C2DrLqp3Hn27UL
fncdw6o//enzmnR4PRNtDy8bxcsSWmPT8rWYXJcXPyxXYlO3fZX6iAaPdTSt
9PVV4KOwIPy76TE86fnLevyHHN/d8ITUNasw+2Str5e5DAvsHjU6tinwLt9x
zyqtFB/lFtO2JQ/j8s8/9txL78fc0zGByngp5oQ3FOxz7MXjcbMXsvIkWDnV
sbBzdTf+qf0KF2bEmCkdOf8hR4T7Wre019EaMQpbfmfo20oc4xkwF36xAUhG
5ssH31eALDAqIqmsE0iZOTs7CsOkAARL/CSgHm/Vcx90wWAVO0nTIwVOxasn
u6N6ITOpNTDit2HghNjTdM39EFX+SWTpeQWkx/Sf4rRIgZ/bZfG2RwXC3c42
e+xl8DDHwyP/rzGQuiw+2Vsih2i7kQcO+zRw+JhH7AWWArRc8TbZcS08ljLD
+J1KECTb6HkpOgjP2PLeatcoWGYpsnmF03DHY+PPD+ljkF28KsixUA9shlBZ
GaiGnZZZ7u1njcASJvjT8zTQEJQ4MFY7Bwa9RW3q8ARsKsEdT6soGAtti+5Y
MwkNvF7EUpihXp+YZWtydMBfGe7x2aQ54kcy7VylU3BLbtUcoLZAtoXvoiyd
ZyDYge52ztwSXd9ffkObrofjwT6+dWZ0FLw1K7CzzQBdNRNhHQY6uh6d6Mqd
NULcMcNXK+ZbIdX8HbR7EXNwxd/HsNeKQAHP/Xydi0xQdzPyV5E1gWa51veF
V01wd3GmjzuTQLcqB3d+XWGCvpH7SaYlBHJNz4i90mAC5pkv5TXrCGS2oiXf
qcMEZx7FP54LIZDo8Hr54gkTpH5xrexGIYE2Ee4FtrsoyBa0+9kXE0h9ZGZp
QygFBY7KgRNXCVQzJK4KiaTg5nuvRWHVBGIJ+K35PAqUucLc2RYCTUVUKuZn
UBDd2Z8SOkSgOxUrtlpVU5DIMdoI3xIo3mZcXF1PwYkidr3bOwKtThOFBTRR
UBx3cMT4N4EuBR+IOy2kQEJo91WbCJSqKblMe0GBPIU1zaQx0Lr98eyKAQom
BjYXZlox0HD75trtbyhYWHvq6R4mA4UVDYiyP1DAtqtMaHVgIMKiJshlnALP
DDHh5sRAooQ0CTlJgZ9MVVXgzEDpLwNivjFQ8L9f6H+/4B94d3dM
                  "]]}}}}, {
             ImageSize -> 40, PlotRange -> {{-4, 4}, {-4, 4}}, 
              PlotRangePadding -> {0.2, 0.2}}], 
            "Sawtooth"]}}, {{$CellContext`ax$$, 0.9, "Amplitude"}, 0, 1, 
         ImageSize -> Small}, {{$CellContext`\[Omega]x$$, 3, "Frequency"}, 1, 
         12, 1, ImageSize -> Small}, {{$CellContext`\[Phi]x$$, 0, "Phase"}, 0,
          2 Pi, ImageSize -> Small}, 
        Dynamic[
         TableForm[{{
            Button[$CellContext`speakerIcon, 
             EmitSound[
              Play[
              Sin[Pi $CellContext`t] $CellContext`fx$$[((($CellContext`f0 \
$CellContext`\[Omega]x$$) 2) Pi) $CellContext`t], {$CellContext`t, 0, 1}]]], 
            
            Plot[$CellContext`ax$$ \
$CellContext`fx$$[(($CellContext`\[Omega]x$$ 2) Pi) ($CellContext`t/
                 5) + $CellContext`\[Phi]x$$], {$CellContext`t, 0, 5}, 
             PlotRange -> {-1, 1}, 
             PlotLabel -> $CellContext`makePlotlabel[
              "\!\(\*SubscriptBox[\(f\), \(x\)]\)", $CellContext`\[Omega]x$$ \
$CellContext`f0, " Hz"], AxesLabel -> {"t/ms", ""}, ImageSize -> 160]}}]], 
        Delimiter, 
        Style[
        "Vertical", 12, Bold, TextAlignment -> 
         Center], {{$CellContext`fy$$, Sin, "Waveform"}, {Sin -> Tooltip[
            Graphics[{{
               GrayLevel[0.85], 
               Disk[{0, 0}, 4], 
               GrayLevel[0], 
               Circle[{0, 0}, 4]}, {{{}, {}, {
                 Hue[0.67, 0.6, 0.6], 
                 RGBColor[1, 0, 0], 
                 Line[CompressedData["
1:eJwtmXlUTf/3xm8ahJQKoVCGiCRk+FTsm5JSNEhIokxFKiljSBIlNBDSQCKK
5kmqfZNUVJpU0jxJmrvd+d7ze//W+v5112ute9Y5772f59n7rKPm5G59YgqN
RksRo9H+/3eXqawhX20aI/ipcVX3xtBCvSyfUelF0xgJ2Y0TKuHuqKn2L3ru
gmmMsMeZRvVhN1CWW8pZpzCNsfJd0ZW4sIdY8/ZmsvOUaYygmy8q9obF4gHp
yfkNXdKM2ztm2uwLTcFTpb9HU19JMzYir+DyfUT/He9iTi6XZmjPeWe08PoP
PFfPUwhXnMrwzy/YMX1HB347vKC/R1GK8fFisU7+rz8oLExM1Z0vyVBPWvTD
ZHAYu9PHQq2mSTB6+34dLJGewE0vpervzxBnqE1NFNslz0L9JbVa9zhiDN75
0o1JHA6+UJyhs5cpxvC4kLt0ozgXxSWN/lMeFWOk+s5cmDuTi9/+ZBkm/RFj
1B7VUX+3hIsHPjw78L1BjLH971yDzeZc9Nri6DcjS4zhdCputlgMF9/vGf15
75wYY/evRu/N+jxUuSp7LXiAxkic21/1xImPLvHflKL7aIw86tDij6f5mF0Z
kP6hi8YIOx5eWefJRytV6k9VM42RY3ZBb9KPjwElI9by32mMDXuC1Pvj+Dgi
V7MyIonGSD22/F5wJx8/x4fXx7rSGPMibM5+PihAuSoL91RnGiO+aEr5DEcB
2rNnTC86TmOYtTQb73EWINvUH7rsaQzPOvG4wgsC1BzxSly2m8a4n+752jxc
gI//s/V9t4bG+GYke1TluwCro9YdONlK4e19yLq+UYi0ePeI1noKz7GWBp3X
F6J20od6mwoKLy3RrjhiKMSQjxpWhp8o1Hx51GaxlRAtG9R2qT6jcFNc6DZd
VyFWyynoN9tQWLjFp7L1BWG/8cV7KkQod0Z3qEpchLQgbYeSYhHa9zSmZ00T
oXaoW5T+JxHeOZ4zGC4nwpDYgXmrE0XYfyg0e5OyCC3zu+Sl74pwf+Y9rznr
RVg9WSv+2VCEHcUe2pscRPjDOePPxk9CdPZzaeemiLC2nW25LUOIrekqx65k
irDBVj/POEmI3psrTSdyRdhiVBK8/7kQ70fl6lUViXBAtXHd5atCbNu5NHxl
nQglfvGu5usJUVpYo+bGFKG0JfR+2SBElUhXGy+OCGeU3tpTuVqIxbkavzwF
IlTIklFrUxZiMCj9PCBB4eLQRV8pvgC3hfhcLVOkUNd0+yzDfAFuSopK3riO
wm2MgMtmmQJs+54RwtCh0GDz96697wXoJ8bLMtxCoclym6zjUQLMrX72dT1Q
uE/spF2Aj4DUbWt/hjmFHh8D48v1BTg8OM/L4CSFXtpVM2t1BFjmXb/M0oXC
iwkKF5s1BThUlD1jvyuF1x8/N/2nIsARybFLuz0pvHfuw7CMkI9Pl6bnt1yj
8I1GzRbLAj4eWutu5h9OofOKtCLfLD6OmcatnhZB4arlobvSPvDRZJB2O+Ap
hcmqVvYKMXwcUux+cTqawhylmhv11/nI9JU72/SGwitz0qQlL/LRuu2klNo7
CvUVQ0M3uvNRRvrwbKckChmyVq8ijvCx+bZYcGUKhWWSNV8P0Pn4dVfYb9Nc
CoPE0ywCt/BxTYTuDNs8Cs3FQps+avOxgOacZJdPYY3AcmCBGh9rw07p7WZQ
2DxRPbNVjI/HNzODG0sp/NdZbeNYzEOdxeKPfH+S521PbQ39xMNVzroRio2k
fq0hJz9n8DA7fOGU2CYKmU2Wl5bG8zD1isec2N8UCn5UP+/15yFquKoadRId
V6Yum3uNh69vzj8Z2UWh7/eQD8bePNR+nKHwt5tCyVJLTDjBw8FCj1j3Pgpl
C6u7XIx5mLmp7LraPwqrP6WeidzGw1u/7kzoDlIY9jGE+W0TD+eM9leYD1E4
N8tSSnMFD9O2B78/OEJhU7r2Q/vFPFR1tUq3GaUwMnXWvPtKPNTtKVA2GSP6
el+tMTyVh7/uv5k3b4LCrnep6YtoPBzVykxiEo5PCNGz4HBxQnjvZTmTwpWv
LHen9nOxkludac+icOCFdkNHBxdnLGirWcCm8H3MrCPyv7g4x2LSsoawdmS1
h2c5Fy1/PvZawaXwrvmFKVwGF4MlOi3rCXeIlB/dyOVi69tGnUs8CrekFS2X
SuViSJmZqiKfwofHTuUEJ3Bx7bC84mvCfXNmmirGcvH2SrGZWgKi/7L05mcR
XMyaPjEzmfCwpkj45jYXhW+tloULKTRuf/VwzTUu7la7/h+HcEyoqVqmFxcF
HzX32YgoZBmOpOu6cnF/lOHFBMK7WY+Mio5xcdOFpNgxwvFvdRt2HuIiddmi
aj1F+mnXcarKmosfHBaKnyFsMzOAa7OLi3VHJLdFEn6Pq+/9NuDi66286wzC
Ep41Kk7/cZGtP1bSSth+2cXkfm0uGq7oUhgnnNmgQndfycXEXaUnhIRnBH6u
mVzMRebl6EKKsJOe8zEfJS4+ljm+kEs4b2jm5BQ5Lia1qfj9JazwIiMgUIqc
x7JisJrwaeuD82aJOMgyuXw4hfBnCepdxCQHU7TX1PsTXpATr7dwiIPtrAlL
K8KeLrsqX/UQlm2pm024XHnUYVULB195sOx/kPOrVj0eTa3j4MentoO+hC/5
6vlt/s7BbXcV/DQIV6/vVCz8zMGWL9sXlZP6ruwNeG2Ux8HiA1OKjhD2faK5
+XsaB2Nq3U4Pkf40mdaWWb3j4MMdbxd4EtYWXLRresHBZaY1NUOkv3eSFw46
POWgGVc25CjhtqPF13ofckhf7u77RvSxSdFFzvUOBwuOuyxZTbjvYub6yxc4
6F2gUFfDIXpYZfeFOkvOf1s/R4lwRAu1L+AEBw18HryyIXrcYWB2OdyGg76H
7j7OmCT9nd6FH9ZzcM1Lt17JcdLf/DtWOqs4+J7tJC9B/GHjvqY7T42DjulX
d3KJn8TrL0mVzeLgqI5JXRnxm1O03O6uYTZWmSl7CvpJfyyy2pz72KgmPcJO
/0P6M+WQx0grG9du9Q86Svz8+eSbcEEFG8VtzjW+IH5X097aPDeJjZaPbJWz
ydw0t/4bofWKjf/Oeq6lt5B6ez3ea/ycjbHhPlc/N1NYlTtU4X2Pjemhtfkp
JH+uGMRg/Rk2HnJcO6JZQ+HrY7t8Bo+xUd7WrvLSD9Kf26wtEvZsXBER1pdf
SeGKb3vSN5izcTiw7fuabxTWW1PxYZpsHDy32S39M4WUV5Jj4jI2XkhUWMcg
ebjqyf5Fn1XI+WLC138tJP38nfJkTIaNLcwLE3kkT9ccPxpkOcTCqWOFV3am
UxjgXeQum8zCj7wTc4ZiKUx7clZT/Q0La64n026QfG/5OP/v1hgWVk3/b8O0
5xSuF51zOvuAhcUnr3lIkfnQHrBkX4UbCytGZQ7H3yN58PSWbtBaFr5gfX7g
5k3yJm+HpFTaJJbeldEzMKQwKTTn2/m3k/hR2Xv5IzLfXJ01QjpjJ/HFDu15
bXoUDs2ZqVzwYBIX3+xesJ/Mx1GPem0v10ls80/LaF1G/K9+zL5rxSS+D2Rr
bSPzdkq4b0ZhDBP9IrrTbfJFWOwyfkkzgon01Nt/g3JE6E8/vi3yPhNL9vtb
5KaLUHJ4Z7m3DxOnT1+awnlL5rupXLumHROz7+/okXssQlkqevrzOUx0TXJ0
eXZGhMpnPjleDJ7AYskun6UKIowsKzOe6T+BD2+aKDnIiHCBesPqV1cnMD9B
wylEinDn6GTV6Ql07S6Xa+EJcd5+9SB10wnUWivBkesW4mzD0PSfkhPI6ppw
/5cmRBnlU+I6N8Yx4RJb/pqpEEXfFF6PnhtD+9kdy88fFaDVU/UspdNj6JQa
9VaL7H/xJ3RLtjmN4anEyIPdVgLcRXPqDbYeQ/WFjru3GAowYmPaco0NY6jk
+uJDyHIBrnlh8caROYp5tQFdgn4+2nsHJ9ReGMVrjTRaNdlPz4OMjQt7GGvu
3D1YacdDI0O8faxvGJvbi/vUrHg4d6dnzuGfw3iYe1vMfScPc/c0LbDOGMYO
fuTA+AYeCg7Hd+q6k+tzTzS9lOGhv4++u8yfIbxWaPwoJp+LER9dg1IaBjEo
zPjuCpKLuRsqGZNZA3ho80TPwhw2psh/TVUq6MOZrKk/PNqZeF73mfg29y5s
tz6hccttDHVvHzHpP92CPtU7H224/g9HnAUPb9ytx8Y+85dlWj1468tzXeCU
oorM5ZWe9Y3Y8En/S6J4KhY2yJwU0Rh4RNNYaBOaDC7VDotSgguh0+TAPreY
MuhVVNV/fbEJmCmQMk+vHhxXpC8z7u2G5teL3MaqW0DuW+w7neZ/cNXtk8m+
2C54flk7qzhiDA68WLs/6n4frA95dcD+ExNO3imf0l49AJvvy3erl7PBXu5M
TnnHAFjEFueV17HB6omMa+boAHwf2fvhZBsb9BMsfgbO+geVgodNDybYoFD6
M0HH8h8YhJmLnizkQIFUl3nQj3+gscpp+z0PDswO4EVsrBoE8+jjjd3yXCj2
X706+PswzCq39asz4IEu9fiF+u9h2JotHvlpFw/SL9PmFg0Mw4a2k+ei9/Ig
zu0njTVtBKJ+t9nuOcEDvwM3Go6YjMCFfzVFx+/yYLtm3c0NJSPgtyfE2KmS
Bx0uW13PHhkFT0dBdag1H1QSxt/onhqFTYFzej/Y8eFAT0LnVPdRuB2hf6nY
iQ/VDgr7466PQm+a5Ozfnnxg7P1j0Bg9CmF/FAc/hfEhdmuokkHLKDT+yLu4
vYYPDvK9n2cfHIPNOwxUbE0FIBFZz7znOAZxBb9/6FsJIHHJF3Xx02PAlJWL
UD4oAPaGV0FjV8ZAzdbTqshZACG2jtZVUWPgliO188MdARQ/b+280zEGH46G
m0l+EcBK9QYa/9Q42EoHqyVsEkJVcsl6T49x+HyqVjZ4qxC8N2cd/3tpHMxW
BlU4Gwnhs8mjssbAcdg28CJtmrUQDp2xDslMGoev1euG+l2F8CC1arHbyDio
q8bdUX4phAnd0m2dFyagb6l5mpG4CL7uTd1Ren0CTPMfTXySFsFT12fmHwIm
4Fqoas9qWRFsizljdzliAsrbs79NzhNBkNisC/LZE0AL1QlcpyWCJWUHPhhM
TkD9Gun3O/eLwGrfgHLceSZUxcoN9r4SwTK3uiV3rzJhQ6rxXY+3ImAF5Gu4
3WLCG6+fSRPvRRCV+2CzbjgTknsf+3dniaBfecPe2nQmaM4yc3ApFYFv19Wg
KeNM4GaUl8j8FUGK+0yuk8ck7I1zOpKkTsFgnTZ7/NIk0Mu1pcJWUbBqi82k
381JODk4heGuRUE87flYXNgkBP7b6TxrEwWRoSsHujInofv8pGufEQX+GYa/
nbiTEORibt9zlILPSqd+jYuxYDl7bqbecQqoq0GNftNZsOOPo2zQKQquGNXU
xSmzQIGV9nWGGwXuPx0qurayYMjMTvPVFQrs2JcLnPxYICcDkmphFDw5FP1p
PIgFf5/Mmd//iIJ6ZHz0C2eBjfCq2psnFFjcnZodF8+C8IwGmanRFBjNf5zc
9ZUFS4JdttgnUOB3Lfe95w8WxPpZ/25+RwF2/k6c0sQCvavfXS3fU6CbuCRh
yV8WuDXEHFBNo2CtXmqs0ww2aJ3Ppu/No8A1ti56XJENgcEco8B8ChLF2c/9
VNiwUvLc+uxCCpZVbH0at4YNq1IDvzI/U7Dg8PeQLgs2OE8L/izxnQKJG303
nR6x4T/liXvuvyhwOy++zzGKDQYyzy05zRQ0nVJdeTSeDXqTv1Uvt1Dw3tKu
6nAmGzzNE7uc2imwWVK14GA9G5a/Pt/Z0ENB4dx/Q/tb2DAkXs1Z3EfByhnS
RbY9bDiyXTDP8Q8FggmDUzZMNuQ9u+35/S8Fr0qyMixmc0ARFf3owxTIkEGw
R4UDQ3rPGk1HKLiQPHJw9zIOyFfGbzAbpWDXEw2amQ4H4udbiDaOU5B5z7jO
VJ8D3sbnXRdPULDI99gbEyPCp1d20JgUjDtHmxvbcCD6+MnGpEkK7A/nLd5h
zwGbKH87bxYFX60axw2Pc8DtgUPXJjbRj678MwMvDqhYBVAvOaQ+a7Vc6T7k
/t6XH5lxSX2WmgH4c2Anz3PNEOHtMrd79R9x4FTBr9Pz+KQ+tLhcvSgOjBsI
ZOMIz50svKcbT3Iy62H2UgEFvn9/O/z3ngNns887RhMeaOWs25LJAZ2eQDk5
Ialn7RzJzfkc2PY7i3GJcOHX9U0bv3BAfHOrVzPhlZ8sknQqOJAQ+me1joiC
sBTX6xvqOSC8Vdh7m7DgVaDV+hYOhL3eHUf2bTj59M2ydT0ceB/s5yhPUVAd
XMxeO8gB6yrzpWaEdW92fNNicsBSFP3Hh3C8tzB6jYAD/6W4JL8hLHt6wTlN
CS6c9Xx9sYzwJYfNRqtluDC3ycSwi3CXtY3Sqtlc2OC+W55J2HznuYGVKlwI
KUnuJO8fkK33oGDFMi5UnTqdSd4/QFU7KURdkwtHO28EkvcPCFpWdmy5DheC
80eP/iPMnNe7aZk+uZ8fQ/cnYYeZU6YvNeLCUB5zbg7hMrHFrWrmXCgffDQZ
Qng9Sy9V1YZcH53Y4EQ4auDArcX2XLhvZZCnSViq3dt20XFy/b2TL4ZJPTzq
wjQWunIhvEoj8C3h5tIUgbIXF1ZERnnZETbKr/ixwIcL8m61ThKEk1P/xs33
58K5so69b0j9bz5baqr0iAsPpvzZVkv6pzn1tWDoORdcnWjRDoSbvNRTv7zi
QmNJ/u5u0n8tSw0lzwwu0GojEn7yKPhVkPjN5BMXTDZMWhoS9l+teX1xMReW
TLu0+x3RU7PU2t6KWi5cLfWlOxD93fZKffqqmQs2y203fyD61O5aZ36liwuO
XcM3mUS/dwp0MlaMc2FGwkJFV6JvHS/dm37yPJBJL1hFjVHQ3vlJ5+B8Htj5
DH+ZRTjIYmv/WjUecFovZS4gfupYRbdo1eZB8tW7j5SI/+537li4xZIHl7J9
jmQRf26xKK2WPcCD8mHbpMB+CnryTfx7j/DgRV7EHlviZ92nZv/C3HmQwnOP
aiL+79tj9XHoAQ/Sbss63CT5EJpf6/olggcjPffPzmujQH+VjerzGB6EXGI2
JJA8CZPcf8ckmQcw3pybQvIH8u33vSJz/uPfNcXH6og/NNqkr/zkwcB3XlJB
DQURT47kW7aSPUHszZhcNZkPnk5LRYM82F218XF0BQVPNZzHDsiQvcCBZXK4
hALDJ3/j187mQ7b38WVXiikYljhzQEqFD7aWC48+LKJgR8dZzFjNBwsLE15c
AcmLiPP3Zc34sKq36atbFgVmEjc0vgTy4emCh+uevaLgaIFuvRHZG4T07Bzp
lySfLrCul0TyYRYYWbjHUBDXf7b+axIf7gwGZKk9o4BTYX+jvJIP+g5155Uf
EH891v1ZJS8ATSstl2MXKMjbw7phsUAAOpV2x4zOU/Bjavqq6iUCOF7dfFXF
gwLeZQ3fmg0CuB7oPCPdhQJLh3mr6/cJ4OY/80JPe+J3dZbvr2cCmC8uZmJG
p0ChI221XZwAOvbUPonRp2DFs7MNzYkCqGs8MefvFgqsZ/SubvkkAMkUqZhj
6yh4O1LX0NYqgHvrVcVH1CjYl5um2aMmhH+DR2YfFSP6Nz3bNPxOCI2VQWEZ
H0UwGrbkQFuaEErTEm/SyTxf39LYWPlRCOfOSnaXpIog22174/tyITRd/0nL
SxABhis1nP4rhLFrWmU7H4ugurWorm+lCDJTzAJ4biKYODf3Rxv5X/n7fctL
VESw6dP3PVUpIjCtWBTnpCSCSxI3qwpyRPBTgZPDkReBIOJfZRTZG+LCtDNl
p4pAIp9RYfeH7A0x3rO7RoUwV+rMtwayN4yULX+7olgIWyKxpOo1BWN/Iudv
cRJCj1aKvnMy0U1Vxtrjh4QQWhyTIZZD9oLR2m93bIQwMHjtpU4ZBfPrFJ9m
GQshCvSvRQ5Q8OdW7tekVULw9bRfkKFEoz+QsNoqMSaAXqVfNdftafS+3Dn7
vC4KINmplj63j0Z3PjK04ccZPrx28RncM0Cj3ze9sk7pGB+iPNSf3hmm0afy
Oh/sJ/tq0PUrIxwWjT62dsr5IhM+nIhcEvN7qhh9Qom+XHc50XGtJ/+Fhhj9
MNPNoaiFB0EGitmrz4rRP1QfYm8x5sFJVZvVBkwx+sCxL2pO4lxI756aZTw6
hR62Y/quyiMs2DVbUv2emARds2DN6Xy1CbiwS2dTIk2S3uuZV1L8ZATK345b
l/Ak6VE5Nnml4f3g7MWzXTx9Kv1ie1Op6oMOeL5Dh7d3qjQ9/qL924VRNZD4
Yf+TwhnS9Cypo1oLbWsgd85VHY1Z0vSSge9nlGbVQENvkZtonjRdZqqek+BW
NcwKsOh+u0qafu3CF/U5jVUQ8PV0hXC3NP3uwNwLj89/A8+dL2MSHknTpd1i
Zna8KYKbKV/0FJ5J0y1/Nf5un18EIUr9TT7R0vT5/j/PNwcz4MMfLUXrN9L0
EH8Fu5u9hdB/J/+OIIc8j4/WaJJPHjiUNXpY/Zam9yQ+Vg9/lwZntfkz89ul
6ctc3c1nP0wFn6eLktR7pOk5YZkVqn+T4ZnziV7+oDR9za5n0ZPXE6FeeuLg
G5E0vWBHbJ5h4kvo9pjLniU+jb5IY5ferIEYGG/679HVqdPog0ynxw9vRILc
O98qy1nT6EENf05dTAyFRfLxZz7NnkZ/It++pORGEGheLpVWnz+NrvnG2yk8
8SbodQ68Dlk4jb4w9uyN3MRz8L/vW/T/fd/a9n8S3AsY
                  "]]}}}}, {
             ImageSize -> 40, PlotRange -> {{-4, 4}, {-4, 4}}, 
              PlotRangePadding -> {0.2, 0.2}}], 
            "Sine"], $CellContext`triangle -> Tooltip[
            Graphics[{{
               GrayLevel[0.85], 
               Disk[{0, 0}, 4], 
               GrayLevel[0], 
               Circle[{0, 0}, 4]}, {{{}, {}, {
                 Hue[0.67, 0.6, 0.6], 
                 RGBColor[1, 0, 0], 
                 Line[CompressedData["
1:eJxlyn0slAEcB/A7UWdtR4f03Jm6SoQa8pK6hi6KMRSNUTsnL9maS1Zt4Win
tyNdWVPcLRElrsN52Yzfg4ZU3NkNmzhdmpPL24TnuZen6+/++O77/WxfJjf7
fJoFiURyN+dfR4RT2XqmNWqeY+hCcc/JtrwVirPZLDpPjVwBT+aieDfdbElF
VSuSC1RscMubZvbXiRYxIgDl2yJppoXZaZvdT5FySKD8QcY1FJTkdZ9ditRC
xuDUiqyGgnIcou89QuQgCH0nSXehoDxKq+tD5CNcV+G0Z3Y7UE5i9YeVVRUM
X6Jr5+y2o7ZEUfJZZzUYexpkJxAr1C12SdsvnIMfLauiWGtLNHckMKhifQH8
q7erSnduQ+3lu2bI5GVg7R87Ktwio3IN+8soaw2c7lDzS36RUDRLzEjUrYOi
yjshfZqAtUOnbJqubcJoZuu8X5cRDFvvbRkuONQdVh6P6daDD8FpvyA1QKZr
c29hmx7ORaF3QzsN4O4iimhu0gOncm90QJ8BpPtik2kSPZQEzMzTxw3Q4ajk
qwr0MJedhGiMBhiyUg4kBOuhYjY+jxdlhMXviriUfhwMvRGnS3VGkKpl06Iu
HGi2DVT+hhF400/S+1pxcLtsPcUjmWB9Mub2gVocLuKDN+LsTWAYVVT+FOAg
8wl9w2CZgNqj0FwNw4FbE0RpEJrA66WCl/MJgyGB78iAOwEPIm9aYCgG/jaf
LUR+BMyaGOX8Tgxev0gJSAomoCw1o6OkHoMC6eNXy/EELHmajHXF5v+kNmdP
EQFh6pqyI/kY1HL59RohARJROFOei4Htb4dvjc8JiNooP9ObisESmR0a0khA
I3gIp0LMfw+xY9YEAZY5SiduIAa09mORvhoCkg/ekmq9MCgMHi406QiQjzsF
Z7thoBvmtA1t/u+/1Fx8VA==
                  "]], 
                 Line[CompressedData["
1:eJxljHs0lAkYxke0ndMSOYpE0dHuLNIkyRm2dyu1dpM0fRZ1IlNZK8tKLmW3
jJWkOrY2upDKjGhjJmsqufS2oqZyS2MT04lZl82Oy2Dm+8bMfN/av/eP5/zO
c87veZz5CbyDc1gsVuBs/iPfN2b/j7Y69HE63F8yyWDtqIVmjqUOZfm9Fd3D
DMbywu2saApVGeLN/p0MNpoxtws0FGZobS2PPWPQ/oHI13GUQps4QY+knsHn
SyciXBUUeoUSiUvLGGQPZpf61876q2aKJ9MZzLjkvv5l1awv3B/LTmSw+6tO
2c7bFIrsWtdFRDN4SuyoirhMocz0RsvzYAaHUqWeR1MotOrZMnNjJYOi+Uqs
9Jz1s8+H7Gin0Znzec/iOyTK3rPNK1bQGMj7UOAhJDHHz6Tyqh2NaUfyd20t
JDHwytvtpxfQ2FYz2pJ8hsQOXm5e9IwRj20sRvkhEuXN/1g7dxpRzmNEF9xJ
HLgjXlIgMGJ28h8JC8RaNKR6fZrRZ8CR2i1zP6rSIMfqi01EsR6XHqqLSj07
hU2uObHKvyikX1iXTiSqUdVc5eTtrcUkMCe+I8dw2j3fE+9PYc3a1seaeyPo
dPy2t4eJGiULn961bRjCAO9x99IpFSZxr5huSFDiZf/Rjodpw8g9GRnwd6wC
OYT4l3BbJY7HGPJO5MixT9tsKXPpwZ+bCrlAPUOWYvDch6w2/LPOr+k307vI
4jlIe/dLMdJ9q5E4LwbW/PSuxuRq6A8IC4kvlsHjfpNlgrB2mJaAxM5XDhPj
dTpu41voKV0Wr+5QAEf4tjUoTAnp8XUBIdeVwN5ubaq5NwxhN1aHFp0bgrTI
NxmcByqIPvV8zvuOEagPcrQItlbDkyw3t7Mvx0DhvOh459UpiFg42GgTroa4
I25ReYu1MMV9tqE/ZQpaFFa8aBkFkgQLHf8HDRBH/YbnBepB9ZpDTqZpwOGA
rGvsGz24+hCaTIEGBoKIpq4oPYhYheqSCxpIc4m7KUzVw9Xz7BGlVANF7YV7
QKiHrOrNvXydBlQr9e0pM3rYTR5t4GdqIavzYc1guQEu7blWN5mrheCGLWUt
1QaQ4+OHmb9qwa78VX71IwPsyJl3v0SkhYqfPhwWyA3gvyRfrHyqhQ72klWO
LCOs9r17nf8xCU4n0m4SoUYwOzEk4F8kQeq2PvfJXBrik0xDoopIIFYTQrUl
Dd3fOrH3iUhQeSbWL7enoSJ4d9te6eyee2cs3YMGYkWbfbichJyA5bu8QmkQ
Nt+r3mFDQdjBeQ6l5TSY13ZmBzlQMBHjsu717zSkiMfDt7tQcDZuY5BJAw1f
X/qMtc2Lgvqk9Iy9r2iYjLkWuJWgwCVzfGDRDA2bzE8O+l2kgCp+U5m9jYEK
VkmNbxEFF0umn0pDGFiseXSGK6KAc2thnzKSgZF31BofKQX7KrdZwxEGLkji
jq+VUyCrwxSyiAGD8PROTwUFB1CRt7KMgejLt1zWDFBg9kRXvquKAa6g74XH
9Ozfi7W9kmYGRMnGa6sMFHS0Bk+/a2dgQax9oruZDuJefW9h3sNAWsR6fzdz
HZh15X7CHWBAySNsXW10UNRdBjFjDAR+mTjCdtCBj6IprID6f/8XHaihrw==

                  "]], 
                 Line[CompressedData["
1:eJwVzH1Qy3EcB/BftdqvSIvaQo9ktkoNu9A6n+9CKU89qFAceep0Zedad65M
oXZyR09KxCFLD9cateTqqNMq0+V0xXB+cTUmEon121Y/P3+8732ve9+9fVJO
xh61xjBMQOd/ewsairgBJFx1t5I6/qag0Lfv8AohCWa3saQRAwXTbvpg31AS
Drr2hj0gKDjgaO2wfDMJPc71/PNDFKz5K1J57yahxEFi5HZSUDW+57xXMgkz
dnHEjJoCuxFpgucREvbbBGu0DRS8622yLM0kgW8xl2RUUJBXuTySU0ZC14Q8
sDWDggCmwjJxgwQ/yV3/9iMU6DK5qu5qEoqnOnid+ygIjOZzTjWTkGL8tUwb
Tv/ZBen7B0lgWCVzCE8KhJkheeecTRDuIsDsXs7B550xjycum+BFiO5VfNAc
bGOc5XdfNMOwnCf9M2kBZWS67kfdLLDmmxqXiEyw/vpTzYCCAt/k/DBpixGU
KYOI/RlDyeXi52rjNBzz3u0vnrZCwpiRD+0RU/BwlKkO/2mN+prSq35cmoQo
F1vuJSsGyiqWHVrtPg5ZUcLgeswW6RxsCALXw/PaqViNyRZJ8qOyOE4fITXT
lODlwESq2i/6dbHDcGOL0BTHxFHft7CqAFkP1DcmVjyZh6Ot0dsn1/r2QJtr
tpDPwpGuJT5MpNXAa31Xxpwb7TOphki2BlgFu0Zr/XCEsS4LjyufQUHPif7Z
HTjiCd/23yE64VTEnVv3y3D0c4YwrZK1Ql5Tt2hhJe2uX7dDtWoo4hh0OTdp
FzIitrHV0PglcFFsDY68PfxKU5XNYJB3yC2PcITEUv9qQgUH+t5IYt7T+yJO
m0BWA+kCs2PHCG1FKGMnWwE51zwbuGO016VEpymroTL1qN78HUe5SY0GBXEb
hvDfe2vmaEfI1wTLymFUwjaybOxRbtqgVqIshSndhrJsJu0rHocbiCJwqssd
iGbRVh1fKZYVgKfzvbR2F9ozs4mtRC4EnO7FuYvtEXaB55woywLRp3FFkQdt
Xv3YOdkxiIpcsMnsQxvDBju/5m/8B64DZk8=
                  "]]}, {}}, {{}, {}, {}}}}, {
             ImageSize -> 40, PlotRange -> {{-4, 4}, {-4, 4}}, 
              PlotRangePadding -> {0.2, 0.2}}], 
            "Triangle"], $CellContext`sawtooth -> Tooltip[
            Graphics[{{
               GrayLevel[0.85], 
               Disk[{0, 0}, 4], 
               GrayLevel[0], 
               Circle[{0, 0}, 4]}, {{{}, {}, {
                 Hue[0.67, 0.6, 0.6], 
                 RGBColor[1, 0, 0], 
                 Line[CompressedData["
1:eJwt1P8303scwHHM8lmikSaVFZWTOO6Uq5rq9b51uSjdiEunG9fuabnkS+qG
o5vcq+imk8o9F8lVvuTLzahcdc3en4qG2xdpIVadWdaaG5sZtrHPvfec+8Pz
PP+DhwsvOeyghZmZWci//ffgINsdRhcG6QUsFUVR2K/5hJpgM8hk/ao8vYHC
ni6jV1lLGWTTbW83rY7CtnrxjLc9g9ywNoSnGKXw85rshjgLBrnRLmfwcT+F
owidU98wQSK5prtYQOFD4iF1YwVB7s19Ur8hhsI5/rVl/DUEmfEsJ/GQyISP
SAz2lxdZkX0Sa9X92DncfWCp8t2ieSSbTHbYuHwWz4nqGrlOdLIloZ2+8LUB
y29pLoYyLElevrf61Y967HttnuS8NY00XsrMwzCDt7j2ep2bMSerbd84Fcmm
8PJM2x/yVWZkebB36ouzOtxT6h3Ff03h3MOx6e5Bk/hZ3O33n7bO4WxaXVrq
xwlc7f580542Iz506tnqvhoN5pT0pKR26XFp20hRabwau3C2DrLqp3Hn27UL
fncdw6o//enzmnR4PRNtDy8bxcsSWmPT8rWYXJcXPyxXYlO3fZX6iAaPdTSt
9PVV4KOwIPy76TE86fnLevyHHN/d8ITUNasw+2Str5e5DAvsHjU6tinwLt9x
zyqtFB/lFtO2JQ/j8s8/9txL78fc0zGByngp5oQ3FOxz7MXjcbMXsvIkWDnV
sbBzdTf+qf0KF2bEmCkdOf8hR4T7Wre019EaMQpbfmfo20oc4xkwF36xAUhG
5ssH31eALDAqIqmsE0iZOTs7CsOkAARL/CSgHm/Vcx90wWAVO0nTIwVOxasn
u6N6ITOpNTDit2HghNjTdM39EFX+SWTpeQWkx/Sf4rRIgZ/bZfG2RwXC3c42
e+xl8DDHwyP/rzGQuiw+2Vsih2i7kQcO+zRw+JhH7AWWArRc8TbZcS08ljLD
+J1KECTb6HkpOgjP2PLeatcoWGYpsnmF03DHY+PPD+ljkF28KsixUA9shlBZ
GaiGnZZZ7u1njcASJvjT8zTQEJQ4MFY7Bwa9RW3q8ARsKsEdT6soGAtti+5Y
MwkNvF7EUpihXp+YZWtydMBfGe7x2aQ54kcy7VylU3BLbtUcoLZAtoXvoiyd
ZyDYge52ztwSXd9ffkObrofjwT6+dWZ0FLw1K7CzzQBdNRNhHQY6uh6d6Mqd
NULcMcNXK+ZbIdX8HbR7EXNwxd/HsNeKQAHP/Xydi0xQdzPyV5E1gWa51veF
V01wd3GmjzuTQLcqB3d+XWGCvpH7SaYlBHJNz4i90mAC5pkv5TXrCGS2oiXf
qcMEZx7FP54LIZDo8Hr54gkTpH5xrexGIYE2Ee4FtrsoyBa0+9kXE0h9ZGZp
QygFBY7KgRNXCVQzJK4KiaTg5nuvRWHVBGIJ+K35PAqUucLc2RYCTUVUKuZn
UBDd2Z8SOkSgOxUrtlpVU5DIMdoI3xIo3mZcXF1PwYkidr3bOwKtThOFBTRR
UBx3cMT4N4EuBR+IOy2kQEJo91WbCJSqKblMe0GBPIU1zaQx0Lr98eyKAQom
BjYXZlox0HD75trtbyhYWHvq6R4mA4UVDYiyP1DAtqtMaHVgIMKiJshlnALP
DDHh5sRAooQ0CTlJgZ9MVVXgzEDpLwNivjFQ8L9f6H+/4B94d3dM
                  "]]}}}}, {
             ImageSize -> 40, PlotRange -> {{-4, 4}, {-4, 4}}, 
              PlotRangePadding -> {0.2, 0.2}}], 
            "Sawtooth"]}}, {{$CellContext`ay$$, 0.9, "Amplitude"}, 0, 1, 
         ImageSize -> Small}, {{$CellContext`\[Omega]y$$, 1, "Frequency"}, 1, 
         12, 1, ImageSize -> Small}, {{$CellContext`\[Phi]y$$, 0.6, "Phase"}, 
         0, 2 Pi, ImageSize -> Small}, 
        Dynamic[
         TableForm[{{
            Button[$CellContext`speakerIcon, 
             EmitSound[
              Play[
              Sin[Pi $CellContext`t] $CellContext`fy$$[((($CellContext`f0 \
$CellContext`\[Omega]y$$) 2) Pi) $CellContext`t], {$CellContext`t, 0, 1}]]], 
            
            Plot[$CellContext`ay$$ \
$CellContext`fy$$[(($CellContext`\[Omega]y$$ 2) Pi) ($CellContext`t/
                 5) + $CellContext`\[Phi]y$$], {$CellContext`t, 0, 5}, 
             PlotRange -> {-1, 1}, 
             PlotLabel -> $CellContext`makePlotlabel[
              "\!\(\*SubscriptBox[\(f\), \(y\)]\)", $CellContext`\[Omega]y$$ \
$CellContext`f0, " Hz"], AxesLabel -> {"t/ms", ""}, ImageSize -> 160]}}]], 
        Delimiter, {{$CellContext`tmax$$, 1, 
          "fraction of cycle"}, $CellContext`\[Epsilon], 1, ControlType -> 
         Slider, ImageSize -> Small}}, 
      "Options" :> {ControlPlacement -> Right, FrameLabel -> {{"", ""}, {"", 
           Style["The Virtual Oscilloscope", 18, Bold]}}}, 
      "DefaultOptions" :> {}],
     ImageSizeCache->{787., {311., 316.}},
     SingleEvaluation->True],
    Deinitialization:>None,
    DynamicModuleValues:>{},
    Initialization:>({$CellContext`makePlotlabel[
         Pattern[$CellContext`text1, 
          Blank[]], 
         Pattern[$CellContext`zahl, 
          Blank[]], 
         Pattern[$CellContext`text2, 
          Blank[]]] := StringJoin[$CellContext`text1, " = ", 
         ToString[$CellContext`zahl], $CellContext`text2], \
$CellContext`makePlotlabel[
         Pattern[$CellContext`frequencyRatio, 
          Blank[]]] := Style[
         StringJoin[
          ToString[
           TraditionalForm[
           "\!\(\*SubscriptBox[\(f\), \(x\)]\)"/
            "\!\(\*SubscriptBox[\(f\), \(y\)]\)"]], " = ", 
          ToString[
           TraditionalForm[$CellContext`frequencyRatio]]], 
         Green], $CellContext`triangle[
         Pattern[$CellContext`x, 
          Blank[]]] := $CellContext`auxTriangle[
         Mod[$CellContext`x - Pi/2, 2 Pi]], $CellContext`auxTriangle[
         Pattern[$CellContext`x, 
          Blank[]]] := Piecewise[{{1 - 2 ($CellContext`x/Pi), 
           Inequality[0, LessEqual, $CellContext`x, Less, Pi]}, {-3 + 
           2 ($CellContext`x/Pi), 
           Inequality[
           Pi, LessEqual, $CellContext`x, Less, 2 
            Pi]}}], $CellContext`sawtooth[
         Pattern[$CellContext`x, 
          Blank[]]] := 
       Mod[$CellContext`x + Pi, 2 Pi]/Pi - 1, $CellContext`speakerIcon = 
       Graphics[{
          GrayLevel[0], 
          
          Line[{{-1, 0.75}, {0, 0.75}, {0.8, 1.55}, {0.8, -1.55}, {
            0, -0.75}, {-1, -0.75}, {-1, 0.75}}], 
          Line[{{0, -2}, {0, 2}}], 
          Circle[{-1.2, 0}, 3, {(-Pi)/5, Pi/5}], 
          Circle[{-1.2, 0}, 3.5, {(-Pi)/5, Pi/5}], 
          Circle[{-1.2, 0}, 4, {(-Pi)/5, Pi/5}]}, {ImageSize -> 20}]}; 
     Typeset`initDone$$ = True),
    SynchronousInitialization->True,
    UnsavedVariables:>{Typeset`initDone$$},
    UntrackedVariables:>{Typeset`size$$}], "Manipulate",
   Deployed->True,
   StripOnInput->False],
  Manipulate`InterpretManipulate[1]]], "Output",
 CellChangeTimes->{3.45422593609375*^9, 3.45422609521875*^9, 
  3.45422634203125*^9, 3.454226699609375*^9, 3.454244536140625*^9}]
}, {2}]]
}, Open  ]]
}, Open  ]]
},
WindowSize->{1138, 922},
WindowMargins->{{Automatic, 2}, {Automatic, 2}},
PrintingCopies->1,
PrintingPageRange->{Automatic, Automatic},
FrontEndVersion->"7.0 for Microsoft Windows (32-bit) (February 18, 2009)",
StyleDefinitions->"Default.nb"
]
(* End of Notebook Content *)

(* Internal cache information *)
(*CellTagsOutline
CellTagsIndex->{}
*)
(*CellTagsIndex
CellTagsIndex->{}
*)
(*NotebookFileOutline
Notebook[{
Cell[CellGroupData[{
Cell[567, 22, 151, 2, 83, "Title"],
Cell[CellGroupData[{
Cell[743, 28, 88, 1, 36, "Subsection"],
Cell[CellGroupData[{
Cell[856, 33, 125, 2, 27, "Subsubsection"],
Cell[984, 37, 572, 11, 52, "Input"],
Cell[1559, 50, 801, 17, 152, "Input"]
}, Open  ]],
Cell[CellGroupData[{
Cell[2397, 72, 100, 1, 27, "Subsubsection"],
Cell[2500, 75, 3225, 83, 292, "Input"]
}, Open  ]],
Cell[CellGroupData[{
Cell[5762, 163, 156, 2, 27, "Subsubsection"],
Cell[5921, 167, 2876, 64, 272, "Input"],
Cell[8800, 233, 3150, 83, 244, "Input"]
}, Open  ]]
}, Closed]],
Cell[CellGroupData[{
Cell[11999, 322, 119, 2, 28, "Subsection"],
Cell[CellGroupData[{
Cell[12143, 328, 10359, 250, 1072, "Input"],
Cell[22505, 580, 73267, 1306, 644, "Output"]
}, {2}]]
}, Open  ]]
}, Open  ]]
}
]
*)

(* End of internal cache information *)
