mirror of
https://github.com/StevenBlack/hosts.git
synced 2024-07-16 00:00:31 +02:00
776 lines
31 KiB
Mathematica
776 lines
31 KiB
Mathematica
(* Content-type: application/vnd.wolfram.mathematica *)
|
|
|
|
(*** Wolfram Notebook File ***)
|
|
(* http://www.wolfram.com/nb *)
|
|
|
|
(* CreatedBy='WolframDesktop 13.1' *)
|
|
|
|
(*CacheID: 234*)
|
|
(* Internal cache information:
|
|
NotebookFileLineBreakTest
|
|
NotebookFileLineBreakTest
|
|
NotebookDataPosition[ 161, 7]
|
|
NotebookDataLength[ 31530, 767]
|
|
NotebookOptionsPosition[ 30956, 749]
|
|
NotebookOutlinePosition[ 31353, 765]
|
|
CellTagsIndexPosition[ 31310, 762]
|
|
WindowFrame->Normal*)
|
|
|
|
(* Beginning of Notebook Content *)
|
|
Notebook[{
|
|
Cell[BoxData[{
|
|
RowBox[{
|
|
RowBox[{"SetDirectory", "[",
|
|
RowBox[{"NotebookDirectory", "[", "]"}], "]"}],
|
|
";"}], "\[IndentingNewLine]",
|
|
RowBox[{
|
|
RowBox[{"data", "=",
|
|
RowBox[{"Import", "[", "\"\<stats.out\>\"", "]"}]}],
|
|
";"}], "\[IndentingNewLine]",
|
|
RowBox[{
|
|
RowBox[{"graphtitle", "=", "\"\<Hosts file size history\>\""}],
|
|
";"}], "\[IndentingNewLine]",
|
|
RowBox[{
|
|
RowBox[{
|
|
"graphsubtitle", " ", "=", " ",
|
|
"\"\<base version: (adware + malware) only\>\""}],
|
|
";"}], "\[IndentingNewLine]",
|
|
RowBox[{
|
|
RowBox[{"data", "=",
|
|
RowBox[{
|
|
RowBox[{"(",
|
|
RowBox[{
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"DateObject", "[",
|
|
RowBox[{"#1", "\[LeftDoubleBracket]", "1", "\[RightDoubleBracket]"}],
|
|
"]"}], ",",
|
|
RowBox[{
|
|
"#1", "\[LeftDoubleBracket]", "2", "\[RightDoubleBracket]"}]}], "}"}],
|
|
"&"}], ")"}], "/@", "data"}]}], ";"}], "\[IndentingNewLine]",
|
|
RowBox[{
|
|
RowBox[{"lastitem", "=",
|
|
RowBox[{"Callout", "[",
|
|
RowBox[{
|
|
RowBox[{"Last", "[", "data", "]"}], ",",
|
|
RowBox[{"ToString", "[",
|
|
RowBox[{
|
|
RowBox[{"Last", "[", "data", "]"}], "[",
|
|
RowBox[{"[", "2", "]"}], "]"}], "]"}], ",", "Right", ",", " ",
|
|
RowBox[{"LabelStyle", "->", "Small"}], ",", " ",
|
|
RowBox[{"Background", "->", "LightBlue"}]}], "]"}]}],
|
|
";"}], "\[IndentingNewLine]",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"data", "[",
|
|
RowBox[{"[",
|
|
RowBox[{"Length", "[", "data", "]"}], "]"}], "]"}], "=", "lastitem"}],
|
|
";"}]}], "Input",
|
|
CellChangeTimes->{{3.867182545948308*^9, 3.867182555077017*^9}, {
|
|
3.8671856323646584`*^9, 3.867185655249*^9}, 3.8671870324202747`*^9, {
|
|
3.867187218478177*^9, 3.867187234045384*^9}, {3.867187352932571*^9,
|
|
3.867187371829939*^9}, {3.8671903940899982`*^9, 3.8671904257542353`*^9},
|
|
3.867190458276375*^9, {3.867190733940156*^9, 3.867190734419613*^9}, {
|
|
3.867190798905361*^9, 3.86719081289338*^9}, {3.867190843782461*^9,
|
|
3.867190868878964*^9}, {3.867191008084812*^9, 3.867191008823593*^9}, {
|
|
3.867191045756618*^9, 3.86719109928176*^9}, {3.867191132601091*^9,
|
|
3.867191153305139*^9}, {3.867191256528245*^9, 3.8671913041596727`*^9}, {
|
|
3.867191352877194*^9, 3.8671913561827507`*^9}, {3.867191386467814*^9,
|
|
3.867191411094434*^9}, {3.867191451576531*^9, 3.867191464669776*^9}, {
|
|
3.867191517397131*^9, 3.867191585673174*^9}, {3.867191623805966*^9,
|
|
3.867191637345644*^9}, {3.867191694067857*^9, 3.867191832972144*^9}, {
|
|
3.867443529594183*^9, 3.867443565893339*^9}, {3.867445761749815*^9,
|
|
3.86744582007928*^9}, {3.867445877108981*^9, 3.867445877563551*^9}},
|
|
CellLabel->"In[46]:=",ExpressionUUID->"e5e34011-aa3d-4e95-90b1-863054ac32f5"],
|
|
|
|
Cell[CellGroupData[{
|
|
|
|
Cell[BoxData[{
|
|
RowBox[{
|
|
RowBox[{"graph", "=",
|
|
RowBox[{"DateListPlot", "[",
|
|
RowBox[{"data", "\[IndentingNewLine]", ",",
|
|
RowBox[{"PlotTheme", "\[Rule]", "\"\<Detailed\>\""}],
|
|
"\[IndentingNewLine]", ",",
|
|
RowBox[{"FrameLabel", "\[Rule]",
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"HoldForm", "[",
|
|
RowBox[{"Unique", " ", "domains"}], "]"}], ",", "None"}], "}"}],
|
|
",",
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"HoldForm", "[", "Year", "]"}], ",", "None"}], "}"}]}],
|
|
"}"}]}], "\[IndentingNewLine]", ",",
|
|
RowBox[{"FrameTicks", "->",
|
|
RowBox[{"{",
|
|
RowBox[{
|
|
RowBox[{"{",
|
|
RowBox[{"All", ",", "All"}], "}"}], ",", "Automatic"}], "}"}]}],
|
|
"\[IndentingNewLine]", ",",
|
|
RowBox[{"ImageMargins", "\[Rule]", "10"}], "\[IndentingNewLine]", ",",
|
|
RowBox[{"ImageSize", " ", "->", " ", "Large"}], "\[IndentingNewLine]",
|
|
",",
|
|
RowBox[{"PlotLabel", " ", "->", " ", "\[IndentingNewLine]",
|
|
RowBox[{"Column", "[", "\[IndentingNewLine]",
|
|
RowBox[{
|
|
RowBox[{"{", "\[IndentingNewLine]",
|
|
RowBox[{
|
|
RowBox[{"Style", "[",
|
|
RowBox[{"graphtitle", ",", "16", ",", "Bold"}], "]"}],
|
|
"\[IndentingNewLine]", ",",
|
|
RowBox[{"Style", "[",
|
|
RowBox[{"graphsubtitle", ",", "12", ",", "Bold"}], "]"}],
|
|
"\[IndentingNewLine]", ",",
|
|
RowBox[{"Style", "[",
|
|
RowBox[{
|
|
RowBox[{"\"\<updated: \>\"", "<>",
|
|
RowBox[{"DateString", "[",
|
|
RowBox[{"TimeZone", "->", "\"\<Zulu\>\""}], "]"}], " ", "<>",
|
|
" ", "\"\< UTC\>\""}], ",", "12"}], "]"}]}],
|
|
"\[IndentingNewLine]", "}"}], "\[IndentingNewLine]", ",", "Center"}],
|
|
"\[IndentingNewLine]", "]"}]}], "\[IndentingNewLine]", ",",
|
|
RowBox[{"LabelStyle", "\[Rule]",
|
|
RowBox[{"{",
|
|
RowBox[{"GrayLevel", "[", "0", "]"}], "}"}]}]}], "\[IndentingNewLine]",
|
|
"]"}]}], ";"}], "\[IndentingNewLine]",
|
|
RowBox[{
|
|
RowBox[{"Export", "[",
|
|
RowBox[{
|
|
RowBox[{
|
|
RowBox[{"StringReplace", "[",
|
|
RowBox[{
|
|
RowBox[{"ToLowerCase", "[", "graphtitle", "]"}], ",",
|
|
RowBox[{"\"\< \>\"", "->", "\"\<_\>\""}]}], "]"}], "<>", " ",
|
|
"\"\<.png\>\""}], ",", " ", "graph"}], "]"}],
|
|
";"}], "\[IndentingNewLine]", "graph"}], "Input",
|
|
CellChangeTimes->{{3.8671865652072144`*^9, 3.867186567959504*^9}, {
|
|
3.8671866556947737`*^9, 3.867186670522201*^9}, {3.867186775392453*^9,
|
|
3.867186776891725*^9}, 3.867186837903651*^9, {3.867186904930146*^9,
|
|
3.867186940968878*^9}, {3.8671872869760838`*^9, 3.867187304612606*^9}, {
|
|
3.867187379649686*^9, 3.867187384392969*^9}, {3.8671874248081408`*^9,
|
|
3.867187425393301*^9}, {3.8671874629428263`*^9, 3.867187467876066*^9}, {
|
|
3.8671875851202183`*^9, 3.8671875923328257`*^9}, {3.867190421572784*^9,
|
|
3.867190455350173*^9}, {3.867191170483214*^9, 3.867191170658471*^9}, {
|
|
3.8671912032969103`*^9, 3.867191245177144*^9}, {3.867443579626745*^9,
|
|
3.867443615991692*^9}, {3.867445864801002*^9, 3.867445865695055*^9}, {
|
|
3.8675854619929047`*^9, 3.867585470469511*^9}},
|
|
NumberMarks->False,
|
|
CellLabel->"In[53]:=",ExpressionUUID->"55c17c4f-14a9-40f1-a01c-ab0b0c9b3309"],
|
|
|
|
Cell[BoxData[
|
|
GraphicsBox[{{}, {{{}, {},
|
|
{RGBColor[0.368417, 0.506779, 0.709798], PointSize[0.007333333333333334],
|
|
AbsoluteThickness[1.6], LineBox[CompressedData["
|
|
1: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
|
|
"]]}},
|
|
TagBox[
|
|
{Opacity[0.], PointBox[{{3.87288*^9, 148942.}}]},
|
|
Annotation[#, {{Callout}, Charting`Private`Tag$308214, {
|
|
464}}]& ]}, {{{}, {{}, GraphicsGroupBox[{
|
|
{RGBColor[0.87, 0.94, 1], AbsoluteThickness[4], Opacity[
|
|
NCache[
|
|
Rational[2, 3], 0.6666666666666666]], CapForm["Butt"], JoinForm[
|
|
"Round"],
|
|
BSplineCurveBox[{
|
|
Offset[{3., 0.}, {3.87309853125*^9, 148942.}],
|
|
Offset[{8., 0.}, {3.87309853125*^9, 148942.}],
|
|
Offset[{10., 0.}, {3.87309853125*^9, 148942.}],
|
|
Offset[{12., 0.}, {3.87309853125*^9, 148942.}],
|
|
Offset[{12., 0.}, {3.87309853125*^9, 148942.}]}]},
|
|
{RGBColor[0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
|
|
AbsoluteThickness[1.25],
|
|
BSplineCurveBox[{
|
|
Offset[{3., 0.}, {3.87309853125*^9, 148942.}],
|
|
Offset[{8., 0.}, {3.87309853125*^9, 148942.}],
|
|
Offset[{10., 0.}, {3.87309853125*^9, 148942.}],
|
|
Offset[{12., 0.}, {3.87309853125*^9, 148942.}],
|
|
Offset[{12., 0.}, {3.87309853125*^9, 148942.}]}]},
|
|
{EdgeForm[None], FaceForm[{RGBColor[0.87, 0.94, 1], Opacity[
|
|
NCache[
|
|
Rational[2, 3], 0.6666666666666666]]}],
|
|
PolygonBox[{
|
|
Offset[{48., 6.0000000000000036`}, {3.87309853125*^9, 148942.}],
|
|
Offset[{48., -5.9999999999999964`}, {3.87309853125*^9, 148942.}],
|
|
Offset[{12., -6.0000000000000036`}, {3.87309853125*^9, 148942.}],
|
|
Offset[{12., 5.9999999999999964`}, {3.87309853125*^9, 148942.}]}]},
|
|
{RGBColor[0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
|
|
AbsoluteThickness[1.25], EdgeForm[None]}, {}, InsetBox[
|
|
StyleBox[
|
|
RotationBox["\<\"148942\"\>",
|
|
BoxRotation->0.],
|
|
StripOnInput->False,
|
|
LineColor->GrayLevel[0],
|
|
LineOpacity->1,
|
|
FrontFaceColor->GrayLevel[0],
|
|
BackFaceColor->GrayLevel[0],
|
|
FrontFaceOpacity->1,
|
|
BackFaceOpacity->1,
|
|
GraphicsColor->GrayLevel[0],
|
|
Opacity->1,
|
|
FontSize->Small,
|
|
FontColor->GrayLevel[0],
|
|
FontOpacity->1], Offset[{30., 0.}, {3.87309853125*^9, 148942.}],
|
|
NCache[ImageScaled[{Rational[1, 2], Rational[1, 2]}],
|
|
ImageScaled[{0.5, 0.5}]]]}]}}, {}}},
|
|
AspectRatio->NCache[GoldenRatio^(-1), 0.6180339887498948],
|
|
Axes->{False, False},
|
|
AxesLabel->{None, None},
|
|
AxesOrigin->{3.729024*^9, 0},
|
|
DisplayFunction->Identity,
|
|
Frame->{{True, True}, {True, True}},
|
|
FrameLabel->{{
|
|
FormBox[
|
|
TagBox[
|
|
TagBox[
|
|
RowBox[{"Unique", " ", "domains"}], HoldForm], HoldForm],
|
|
TraditionalForm], None}, {
|
|
FormBox[
|
|
TagBox[
|
|
TagBox["Year", HoldForm], HoldForm], TraditionalForm], None}},
|
|
FrameStyle->Automatic,
|
|
FrameTicks->FrontEndValueCache[{{All, All}, {
|
|
Charting`DateTicksFunction[Automatic, DateTicksFormat -> {Automatic}],
|
|
Charting`DateTicksFunction[
|
|
Automatic, DateTicksFormat -> {Automatic}, "TickLabels" -> None]}}, {{
|
|
All, All}, {{{3.7237536*^9,
|
|
FormBox[
|
|
StyleBox["\"2018\"",
|
|
Directive[], {}, StripOnInput -> False], TraditionalForm], {
|
|
Rational[1, 72], 0},
|
|
Directive[]}, {3.7552896*^9,
|
|
FormBox[
|
|
StyleBox["\"2019\"",
|
|
Directive[], {}, StripOnInput -> False], TraditionalForm], {
|
|
Rational[1, 72], 0},
|
|
Directive[]}, {3.7868256*^9,
|
|
FormBox[
|
|
StyleBox["\"2020\"",
|
|
Directive[], {}, StripOnInput -> False], TraditionalForm], {
|
|
Rational[1, 72], 0},
|
|
Directive[]}, {3.818448*^9,
|
|
FormBox[
|
|
StyleBox["\"2021\"",
|
|
Directive[], {}, StripOnInput -> False], TraditionalForm], {
|
|
Rational[1, 72], 0},
|
|
Directive[]}, {3.849984*^9,
|
|
FormBox[
|
|
StyleBox["\"2022\"",
|
|
Directive[], {}, StripOnInput -> False], TraditionalForm], {
|
|
Rational[1, 72], 0},
|
|
Directive[]}, {3.88152*^9,
|
|
FormBox[
|
|
StyleBox["\"2023\"",
|
|
Directive[], {}, StripOnInput -> False], TraditionalForm], {
|
|
Rational[1, 72], 0},
|
|
Directive[]}, {3.7237536*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7288512*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7341216*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.739392*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7447488*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7500192*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7552896*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7552896*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7603872*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7656576*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.770928*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7762848*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7815552*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7868256*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7868256*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7920096*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.79728*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8025504*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8079072*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8131776*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.818448*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.818448*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8235456*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.828816*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8340864*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8394432*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8447136*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.849984*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.849984*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8550816*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.860352*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8656224*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8709792*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8762496*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.88152*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}}, {{3.7237536*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
Rational[1, 72], 0},
|
|
Directive[]}, {3.7552896*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
Rational[1, 72], 0},
|
|
Directive[]}, {3.7868256*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
Rational[1, 72], 0},
|
|
Directive[]}, {3.818448*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
Rational[1, 72], 0},
|
|
Directive[]}, {3.849984*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
Rational[1, 72], 0},
|
|
Directive[]}, {3.88152*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
Rational[1, 72], 0},
|
|
Directive[]}, {3.7237536*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7288512*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7341216*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.739392*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7447488*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7500192*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7552896*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7552896*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7603872*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7656576*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.770928*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7762848*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7815552*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7868256*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7868256*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.7920096*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.79728*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8025504*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8079072*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8131776*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.818448*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.818448*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8235456*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.828816*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8340864*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8394432*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8447136*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.849984*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.849984*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8550816*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.860352*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8656224*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8709792*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.8762496*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}, {3.88152*^9,
|
|
FormBox[
|
|
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], {
|
|
0.009722222222222222, 0.},
|
|
Directive[]}}}}],
|
|
GridLines->FrontEndValueCache[{Charting`ScaledTickValues[
|
|
((Transpose[{#,
|
|
Table[
|
|
Directive[
|
|
GrayLevel[0.4, 0.5],
|
|
AbsoluteThickness[1],
|
|
AbsoluteDashing[{1, 2}]], {
|
|
Length[#]}]}]& )[
|
|
Part[
|
|
Select[
|
|
Charting`DateTicksFunction[Automatic, DateTicksFormat -> {Automatic}][
|
|
SlotSequence[1]], And[
|
|
FreeQ[#,
|
|
Alternatives["",
|
|
Spacer[{0, 0}]]], Head[#] === List, Length[#] > 0]& ], All, 1]]& )[
|
|
SlotSequence[1]], {Identity, Identity}]& , Automatic}, {{{3.7237536*^9,
|
|
Directive[
|
|
GrayLevel[0.4],
|
|
Opacity[0.5],
|
|
AbsoluteThickness[1.],
|
|
AbsoluteDashing[{1., 2.}]]}, {3.7552896*^9,
|
|
Directive[
|
|
GrayLevel[0.4],
|
|
Opacity[0.5],
|
|
AbsoluteThickness[1.],
|
|
AbsoluteDashing[{1., 2.}]]}, {3.7868256*^9,
|
|
Directive[
|
|
GrayLevel[0.4],
|
|
Opacity[0.5],
|
|
AbsoluteThickness[1.],
|
|
AbsoluteDashing[{1., 2.}]]}, {3.818448*^9,
|
|
Directive[
|
|
GrayLevel[0.4],
|
|
Opacity[0.5],
|
|
AbsoluteThickness[1.],
|
|
AbsoluteDashing[{1., 2.}]]}, {3.849984*^9,
|
|
Directive[
|
|
GrayLevel[0.4],
|
|
Opacity[0.5],
|
|
AbsoluteThickness[1.],
|
|
AbsoluteDashing[{1., 2.}]]}, {3.88152*^9,
|
|
Directive[
|
|
GrayLevel[0.4],
|
|
Opacity[0.5],
|
|
AbsoluteThickness[1.],
|
|
AbsoluteDashing[{1., 2.}]]}}, Automatic}],
|
|
GridLinesStyle->Directive[
|
|
GrayLevel[0.4, 0.5],
|
|
AbsoluteThickness[1],
|
|
AbsoluteDashing[{1, 2}]],
|
|
ImageMargins->10,
|
|
ImagePadding->{{All, All}, {All, All}},
|
|
ImageSize->Large,
|
|
LabelStyle->{
|
|
GrayLevel[0]},
|
|
Method->{
|
|
"NoShowPlotTheme" -> "Detailed", "OptimizePlotMarkers" -> True,
|
|
"OptimizePlotMarkers" -> True,
|
|
"CoordinatesToolOptions" -> {"DisplayFunction" -> ({
|
|
Identity[
|
|
Part[#, 1]],
|
|
Identity[
|
|
Part[#, 2]]}& ), "CopiedValueFunction" -> ({
|
|
Identity[
|
|
Part[#, 1]],
|
|
Identity[
|
|
Part[#, 2]]}& )}},
|
|
PlotLabel->FormBox[
|
|
TagBox[
|
|
GridBox[{{
|
|
StyleBox[
|
|
"\"Hosts file size history\"", 16, Bold, StripOnInput -> False]}, {
|
|
StyleBox[
|
|
"\"base version: (adware + malware) only\"", 12, Bold, StripOnInput ->
|
|
False]}, {
|
|
StyleBox[
|
|
"\"updated: Fri 23 Sep 2022 13:41:16 UTC\"", 12, StripOnInput ->
|
|
False]}}, GridBoxAlignment -> {"Columns" -> {{Center}}},
|
|
DefaultBaseStyle -> "Column",
|
|
GridBoxItemSize -> {
|
|
"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}], "Column"],
|
|
TraditionalForm],
|
|
PlotRange->{{3.729024*^9, 3.87288*^9}, {0, 148942.}},
|
|
PlotRangePadding->{{
|
|
Scaled[0.02],
|
|
Scaled[0.02]}, {
|
|
Scaled[0.02],
|
|
Scaled[0.08090169943749476]}},
|
|
Ticks->{{}, Automatic}]], "Output",
|
|
CellChangeTimes->{
|
|
3.867186551570758*^9, {3.867186680772122*^9, 3.867186699782072*^9},
|
|
3.867186777935874*^9, 3.86718694202357*^9, 3.8671870510449877`*^9,
|
|
3.867187255654533*^9, 3.867187310041932*^9, 3.867187431429256*^9,
|
|
3.867187477376759*^9, 3.867187602705633*^9, {3.867190444725642*^9,
|
|
3.86719046295945*^9}, 3.867190761611189*^9, 3.867190819779409*^9, {
|
|
3.867190852467555*^9, 3.8671908750350323`*^9}, 3.867191085771729*^9, {
|
|
3.8671911399270573`*^9, 3.867191174532995*^9}, {3.867191217100472*^9,
|
|
3.867191249934973*^9}, {3.867191282486545*^9, 3.867191309118765*^9},
|
|
3.8671913628847427`*^9, {3.8671913975749493`*^9, 3.8671914178619823`*^9},
|
|
3.867191469212702*^9, 3.867191534117766*^9, {3.867191566041802*^9,
|
|
3.867191590853747*^9}, {3.867191700666916*^9, 3.8671917705466948`*^9}, {
|
|
3.867191813970607*^9, 3.867191837153657*^9}, {3.8674436061237383`*^9,
|
|
3.867443624613255*^9}, 3.867444944515202*^9, 3.867445839945568*^9, {
|
|
3.867445870303279*^9, 3.867445881911745*^9}, 3.867584995471957*^9,
|
|
3.867585478130906*^9, 3.86774687062293*^9, 3.868098851430778*^9,
|
|
3.8685235167256823`*^9, 3.86906681078651*^9, 3.8693089287119427`*^9,
|
|
3.869735161175044*^9, 3.870007810203533*^9, 3.870340372505321*^9,
|
|
3.870340403401229*^9, 3.87045361082372*^9, 3.870942972286525*^9,
|
|
3.8713065010498323`*^9, 3.871395829118849*^9, 3.8716416309599857`*^9,
|
|
3.871642275253429*^9, 3.871899229411577*^9, 3.8720932523644876`*^9,
|
|
3.8724283947882633`*^9, 3.8729292766301403`*^9},
|
|
CellLabel->"Out[55]=",ExpressionUUID->"c87a43f9-27fb-40db-a7f6-b3e87b580248"]
|
|
}, Open ]]
|
|
},
|
|
WindowSize->{2133, 1747},
|
|
WindowMargins->{{-2134, Automatic}, {Automatic, 0}},
|
|
FrontEndVersion->"13.1 for Mac OS X ARM (64-bit) (June 21, 2022)",
|
|
StyleDefinitions->"Default.nb",
|
|
ExpressionUUID->"a68abeaf-41ba-46e4-a91b-e09f414e080e"
|
|
]
|
|
(* End of Notebook Content *)
|
|
|
|
(* Internal cache information *)
|
|
(*CellTagsOutline
|
|
CellTagsIndex->{}
|
|
*)
|
|
(*CellTagsIndex
|
|
CellTagsIndex->{}
|
|
*)
|
|
(*NotebookFileOutline
|
|
Notebook[{
|
|
Cell[561, 20, 2709, 63, 157, "Input",ExpressionUUID->"e5e34011-aa3d-4e95-90b1-863054ac32f5"],
|
|
Cell[CellGroupData[{
|
|
Cell[3295, 87, 3319, 73, 409, "Input",ExpressionUUID->"55c17c4f-14a9-40f1-a01c-ab0b0c9b3309"],
|
|
Cell[6617, 162, 24323, 584, 475, "Output",ExpressionUUID->"c87a43f9-27fb-40db-a7f6-b3e87b580248"]
|
|
}, Open ]]
|
|
}
|
|
]
|
|
*)
|
|
|