Files
hosts/stats.nb
T

730 lines
33 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[ 34054, 721]
NotebookOptionsPosition[ 33265, 699]
NotebookOutlinePosition[ 33658, 715]
CellTagsIndexPosition[ 33615, 712]
WindowFrame->Normal*)
(* Beginning of Notebook Content *)
Notebook[{
Cell[CellGroupData[{
Cell[BoxData["\[AliasDelimiter]"], "Input",
CellChangeTimes->{3.931804384010314*^9},
CellLabel->"In[12]:=",ExpressionUUID->"7134d186-2f8f-4a5d-b8fd-e1205134ab62"],
Cell[BoxData["\[AliasDelimiter]"], "Output",
CellChangeTimes->{{3.931804387524592*^9, 3.9318044059991903`*^9},
3.9321123850124197`*^9, 3.932387643037456*^9, 3.9328025295152884`*^9,
3.9329341818122463`*^9, 3.933185624470751*^9, 3.933683992176692*^9,
3.933944168442651*^9, 3.934049100907174*^9, 3.934134035639214*^9,
3.934454107475078*^9, 3.9346630739785833`*^9, 3.934969542910392*^9,
3.935238771709779*^9, 3.935503361187483*^9, 3.935869095494813*^9,
3.935941745079809*^9, 3.936030388772883*^9, 3.936280154713859*^9,
3.936444367251707*^9, 3.9368054886510687`*^9, 3.936959096230813*^9,
3.937168650948542*^9, 3.937300611375231*^9, 3.9374896704758387`*^9,
3.937558235209944*^9},
CellLabel->"Out[12]=",ExpressionUUID->"c43049e9-3575-49ae-bd6b-bc2ddfd68621"]
}, Open ]],
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.867187032420275*^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.867191304159674*^9}, {
3.867191352877194*^9, 3.867191356182763*^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}, {
3.88987554010293*^9, 3.889875542354431*^9}, {3.890909771395684*^9,
3.890909773446272*^9}, {3.89765774638717*^9, 3.897657747223047*^9}, {
3.898379436246955*^9, 3.898379440050661*^9}, {3.90338401735606*^9,
3.9033840200448112`*^9}, {3.906908185436775*^9, 3.9069081879516287`*^9}, {
3.925848183308426*^9, 3.925848185881434*^9}, {3.926438108465784*^9,
3.92643813766343*^9}, {3.928879584090178*^9, 3.928879587280989*^9}, {
3.9293606429237022`*^9, 3.929360645945132*^9}, {3.931376802792758*^9,
3.931376805515088*^9}},
CellLabel->"In[13]:=",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[{"GridLines", "->",
RowBox[{"{",
RowBox[{
RowBox[{"Table", "[",
RowBox[{
RowBox[{"DateObject", "[",
RowBox[{"{", "x", "}"}], "]"}], ",",
RowBox[{"{",
RowBox[{"x", ",", "2017", ",", "2025"}], "}"}]}], "]"}], ",", " ",
"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.867186565207215*^9, 3.867186567959504*^9}, {
3.867186655694774*^9, 3.867186670522201*^9}, {3.867186775392453*^9,
3.867186776891725*^9}, 3.867186837903651*^9, {3.867186904930146*^9,
3.867186940968878*^9}, {3.867187286976087*^9, 3.867187304612606*^9}, {
3.867187379649686*^9, 3.867187384392969*^9}, {3.8671874248081408`*^9,
3.867187425393301*^9}, {3.867187462942827*^9, 3.867187467876066*^9}, {
3.867187585120219*^9, 3.867187592332826*^9}, {3.867190421572784*^9,
3.867190455350173*^9}, {3.867191170483214*^9, 3.867191170658471*^9}, {
3.867191203296914*^9, 3.867191245177144*^9}, {3.867443579626745*^9,
3.867443615991692*^9}, {3.867445864801002*^9, 3.867445865695055*^9}, {
3.867585461992905*^9, 3.867585470469511*^9}, {3.904556674711198*^9,
3.90455667849632*^9}, {3.9218516314196*^9, 3.921851639595783*^9}, {
3.92185167067825*^9, 3.9218517351487503`*^9}, 3.9218517880751457`*^9},
NumberMarks->False,
CellLabel->"In[20]:=",ExpressionUUID->"55c17c4f-14a9-40f1-a01c-ab0b0c9b3309"],
Cell[BoxData[
GraphicsBox[{{}, {{{}, {},
TagBox[
{RGBColor[0.368417, 0.506779, 0.709798], PointSize[
0.0055000000000000005`], AbsoluteThickness[2], LineBox[CompressedData["
1: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
afM6xn+hcr5a+H3/nVY74v3RvgzPy2RxYCytzBGr/6AjY/H+GlOWxvq9ybS5
QewZUZ7npx3qd5f2fyV2FanAesxEfRZV5P5sFhuNKzG/Y2LtGh2ZJlbmV2a7
C+tPqMJ8V4qdOlU5/17U8xytpqF+qdW4v41lPZ7u1Vm/GLE1uQbHJ4v1SjWZ
7wiMn0DrsWKjfC2u76JYGevm85uAelt0ciLqXao2z3MlvP8e0LOWi60Dddi/
Dn5f99bl/u8W+5bUY76F8L5pWp/tg/B+cTVg/lvxvrpKm4fx+5n/Q+YbhufF
Cbrfay3rT71IPk9TxWqfhtyf5WInZyOe/wi5v3q/pr39xabRmO0fitU3tOMR
W56m/P2tjfvmmmbMLxX5HGrO8xiN8xHQ+Pu8Hc/P/hZcXz6cb7sl93+DWG/e
ivtzCPu1mB6i5ghx5UG4H5mtud6ZuB9dp4vuwn0s9i+cPxP3r3xtWI+6sl/q
XDoZ91WnbhTXfx/P946o4O83ztd52imNfM605Xn0Ip/T7bgfo9F/ykesTxzy
SaG1/TiflT/m+cZ9Uz1OhxXD+erUnutriPNVtgPPz2y838fRyjLc3w7Tcb+K
jeSOrGdh3JeiOrFdw/t8FB3oKPauoIt2xn2htYf7NRnneR+9cTXuby2iuT+N
cL/cEx18H+M+0qwz8x0udt+kh3wcak8O+R41G3/C8/izfI+pu2hNkXajQBfW
t5xYS6KtLmIrb1fWYwi+b3XaGirWE2itndgO68bnfaA4UCfo4S+1/wCIKNmK
"]]},
Annotation[#, "Charting`Private`Tag#1"]& ]},
TagBox[
{Opacity[0.], PointBox[{{3.9375072*^9, 116424.}}]},
Annotation[#, {{Callout}, Charting`Private`Tag, {670}}]& ]}, {{{}, {{},
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.938134278375*^9, 116424.}],
Offset[{8., 0.}, {3.938134278375*^9, 116424.}],
Offset[{10., 0.}, {3.938134278375*^9, 116424.}],
Offset[{12., 0.}, {3.938134278375*^9, 116424.}],
Offset[{12., 0.}, {3.938134278375*^9, 116424.}]}]},
{RGBColor[0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
AbsoluteThickness[1.25],
BSplineCurveBox[{
Offset[{3., 0.}, {3.938134278375*^9, 116424.}],
Offset[{8., 0.}, {3.938134278375*^9, 116424.}],
Offset[{10., 0.}, {3.938134278375*^9, 116424.}],
Offset[{12., 0.}, {3.938134278375*^9, 116424.}],
Offset[{12., 0.}, {3.938134278375*^9, 116424.}]}]},
{EdgeForm[None], FaceForm[{RGBColor[0.87, 0.94, 1], Opacity[
NCache[
Rational[2, 3], 0.6666666666666666]]}],
PolygonBox[{
Offset[{48., 5.5000000000000036`}, {3.938134278375*^9, 116424.}],
Offset[{48., -5.4999999999999964`}, {3.938134278375*^9, 116424.}],
Offset[{12., -5.5000000000000036`}, {3.938134278375*^9, 116424.}],
Offset[{12., 5.4999999999999964`}, {3.938134278375*^9,
116424.}]}]},
{RGBColor[0.6666666666666666, 0.6666666666666666, 0.6666666666666666],
AbsoluteThickness[1.25], EdgeForm[None]}, {}, InsetBox[
StyleBox[
RotationBox["\<\"116424\"\>",
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.938134278375*^9, 116424.}],
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],
Automatic,
Directive[]}, {3.7868256*^9,
FormBox[
StyleBox["\"2020\"",
Directive[], {}, StripOnInput -> False], TraditionalForm],
Automatic,
Directive[]}, {3.849984*^9,
FormBox[
StyleBox["\"2022\"",
Directive[], {}, StripOnInput -> False], TraditionalForm],
Automatic,
Directive[]}, {3.913056*^9,
FormBox[
StyleBox["\"2024\"",
Directive[], {}, StripOnInput -> False], TraditionalForm],
Automatic,
Directive[]}, {3.9762144*^9,
FormBox[
StyleBox["\"2026\"",
Directive[], {}, StripOnInput -> False], TraditionalForm],
Automatic,
Directive[]}, {3.7237536*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.7552896*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.7868256*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.7868256*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.818448*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.849984*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.849984*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.88152*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.913056*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.913056*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.9446784*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.9762144*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}}, {{3.7237536*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.7868256*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.849984*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.913056*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.9762144*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.7237536*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.7552896*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.7868256*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.7868256*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.818448*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.849984*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.849984*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.88152*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.913056*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.913056*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.9446784*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}, {3.9762144*^9,
FormBox[
TemplateBox[{0, 0}, "Spacer2"], TraditionalForm], Automatic,
Directive[]}}}}],
GridLines->{{3.6922176*^9, 3.7237536*^9, 3.7552896*^9, 3.7868256*^9,
3.818448*^9, 3.849984*^9, 3.88152*^9, 3.913056*^9, 3.9446784*^9},
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", "AxisPadding" -> Scaled[0.02],
"DefaultBoundaryStyle" -> Automatic,
"DefaultGraphicsInteraction" -> {
"Version" -> 1.2, "TrackMousePosition" -> {True, False},
"Effects" -> {
"Highlight" -> {"ratio" -> 2}, "HighlightPoint" -> {"ratio" -> 2},
"Droplines" -> {
"freeformCursorMode" -> True,
"placement" -> {"x" -> "All", "y" -> "None"}}}}, "DefaultMeshStyle" ->
AbsolutePointSize[6], "DefaultPlotStyle" -> {
Directive[
RGBColor[0.368417, 0.506779, 0.709798],
AbsoluteThickness[2]],
Directive[
RGBColor[0.880722, 0.611041, 0.142051],
AbsoluteThickness[2]],
Directive[
RGBColor[0.560181, 0.691569, 0.194885],
AbsoluteThickness[2]],
Directive[
RGBColor[0.922526, 0.385626, 0.209179],
AbsoluteThickness[2]],
Directive[
RGBColor[0.528488, 0.470624, 0.701351],
AbsoluteThickness[2]],
Directive[
RGBColor[0.772079, 0.431554, 0.102387],
AbsoluteThickness[2]],
Directive[
RGBColor[0.363898, 0.618501, 0.782349],
AbsoluteThickness[2]],
Directive[
RGBColor[1, 0.75, 0],
AbsoluteThickness[2]],
Directive[
RGBColor[0.647624, 0.37816, 0.614037],
AbsoluteThickness[2]],
Directive[
RGBColor[0.571589, 0.586483, 0.],
AbsoluteThickness[2]],
Directive[
RGBColor[0.915, 0.3325, 0.2125],
AbsoluteThickness[2]],
Directive[
RGBColor[0.40082222609352647`, 0.5220066643438841, 0.85],
AbsoluteThickness[2]],
Directive[
RGBColor[0.9728288904374106, 0.621644452187053, 0.07336199581899142],
AbsoluteThickness[2]],
Directive[
RGBColor[0.736782672705901, 0.358, 0.5030266573755369],
AbsoluteThickness[2]],
Directive[
RGBColor[0.28026441037696703`, 0.715, 0.4292089322474965],
AbsoluteThickness[2]]}, "DomainPadding" -> Scaled[0.02],
"PointSizeFunction" -> "SmallPointSize", "RangePadding" -> Scaled[0.05],
"AllowMicroRanges" -> {True, False}, "OptimizePlotMarkers" -> True,
"IncludeHighlighting" -> "CurrentSet", "HighlightStyle" -> Automatic,
"OptimizePlotMarkers" -> True,
"CoordinatesToolOptions" -> {"DisplayFunction" -> (({
DateString[
Part[#, 1], "DateShort"],
Part[#, 2]}& )[{
Identity[
Part[#, 1]],
Identity[
Part[#, 2]]}]& ), "CopiedValueFunction" -> (({
DateString[
Part[#, 1], "DateShort"],
Part[#, 2]}& )[{
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: Thu 10 Oct 2024 14:10:35 UTC\"", 12, StripOnInput ->
False]}}, GridBoxAlignment -> {"Columns" -> {{Center}}},
DefaultBaseStyle -> "Column",
GridBoxItemSize -> {
"Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}], "Column"],
TraditionalForm],
PlotRange->{{3.729024*^9, 3.9375072*^9}, {0, 218063.}},
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.867187051044989*^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.867190875035033*^9}, 3.867191085771729*^9, {
3.867191139927058*^9, 3.867191174532995*^9}, {3.867191217100472*^9,
3.867191249934973*^9}, {3.867191282486545*^9, 3.867191309118765*^9},
3.867191362884745*^9, {3.86719139757495*^9, 3.867191417861985*^9},
3.867191469212702*^9, 3.867191534117766*^9, {3.867191566041802*^9,
3.867191590853747*^9}, {3.867191700666916*^9, 3.867191770546698*^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.868523516725683*^9, 3.86906681078651*^9, 3.869308928711943*^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.871641630959985*^9,
3.871642275253429*^9, 3.871899229411577*^9, 3.8720932523644876`*^9,
3.87242839478826*^9, 3.8729292766301403`*^9, 3.8736608832707767`*^9,
3.874069338302347*^9, 3.874325909186389*^9, 3.874696457503956*^9,
3.874861895344188*^9, 3.875050962875978*^9, 3.87526519097518*^9,
3.875891090297274*^9, 3.876342003848527*^9, 3.876998312579729*^9,
3.8772936096656237`*^9, 3.877382516377141*^9, 3.877964348832008*^9,
3.87804450687954*^9, 3.878470212323723*^9, 3.8786395885601797`*^9,
3.878639620334971*^9, 3.878757847201033*^9, 3.879112223224792*^9,
3.879170520951467*^9, 3.879289724404871*^9, 3.879371591147833*^9,
3.879797285624524*^9, 3.879923975629261*^9, 3.880151317819726*^9,
3.880393658429194*^9, 3.880543046724104*^9, 3.881056375670085*^9,
3.881325738216374*^9, 3.881334367469533*^9, 3.881592959478129*^9,
3.882027365892887*^9, 3.88219345383886*^9, 3.882466370101098*^9,
3.882613249735723*^9, 3.883174805016778*^9, 3.883439999108673*^9,
3.883605359783735*^9, 3.883843869256338*^9, 3.883866592728613*^9,
3.883867143448183*^9, 3.884153915891087*^9, 3.884641124197339*^9,
3.884773401559798*^9, 3.884775165607097*^9, 3.88477566967144*^9,
3.885548303427269*^9, 3.885831123028147*^9, 3.886191584864834*^9,
3.886621436378044*^9, 3.886855243870946*^9, 3.887106308113074*^9,
3.887235622274569*^9, 3.887498860649525*^9, 3.887834971429055*^9,
3.8884179282247667`*^9, 3.888752672205769*^9, 3.889131678960092*^9,
3.889875549917007*^9, 3.890245716755601*^9, {3.890686789876093*^9,
3.8906868143380527`*^9}, 3.8908207849213142`*^9, 3.890908186110266*^9,
3.89090978001711*^9, 3.891285151358225*^9, 3.891545263571479*^9,
3.8916073042523813`*^9, 3.891872341652968*^9, 3.892072401751935*^9,
3.89228235594491*^9, 3.892544999424947*^9, 3.892806179970969*^9,
3.893095552437428*^9, 3.893172375102555*^9, 3.89362060069613*^9,
3.893686053639799*^9, 3.89397203764882*^9, 3.894751203039884*^9,
3.895084844111672*^9, 3.895439490125032*^9, 3.895526321693917*^9,
3.895657784061549*^9, 3.8957448599055853`*^9, 3.895931247787265*^9,
3.896013566564756*^9, 3.896095386373332*^9, 3.8965191786429*^9,
3.896893631393726*^9, 3.897216178858164*^9, 3.897657754621402*^9,
3.897926194231195*^9, 3.898379414999449*^9, 3.8983794476037083`*^9,
3.898434292317229*^9, 3.898951274337104*^9, 3.899121622375916*^9,
3.899475149831279*^9, 3.899911501496304*^9, 3.900175205856585*^9,
3.900270527812401*^9, 3.900491563343502*^9, {3.903025185560467*^9,
3.903025205982198*^9}, 3.903174150401764*^9, 3.903182074275147*^9,
3.903383990135808*^9, 3.903384025396119*^9, 3.903726387165244*^9,
3.903971852825098*^9, 3.904336629052966*^9, 3.904556665826528*^9,
3.904660734636202*^9, 3.905083048189001*^9, 3.905285129053268*^9,
3.905441042720232*^9, 3.905782272103561*^9, 3.906106379419388*^9,
3.90620708413487*^9, 3.906558811905631*^9, 3.906635301595938*^9,
3.906908194396344*^9, 3.907055587466549*^9, 3.907452024145508*^9,
3.90783837173269*^9, 3.90797214412626*^9, 3.908034764359009*^9,
3.908469310792593*^9, 3.908732154353013*^9, 3.908732190062996*^9,
3.908901085229148*^9, {3.909427575397406*^9, 3.909427588602787*^9},
3.909612415221402*^9, 3.909847575834868*^9, 3.909936481017467*^9,
3.909991254378272*^9, 3.910005424673617*^9, 3.910456143107051*^9,
3.910647476573389*^9, 3.911433387460314*^9, 3.911728222756092*^9,
3.9118237070907784`*^9, 3.912544596386341*^9, 3.912962757486238*^9,
3.91332901505127*^9, 3.913585485561975*^9, 3.914191899559814*^9,
3.91452905381531*^9, 3.914864261401607*^9, 3.915353459292568*^9,
3.915612436883578*^9, 3.916243653217845*^9, 3.916581681635819*^9,
3.916758553791595*^9, 3.917042927532581*^9, 3.91779822205876*^9,
3.917830311292558*^9, 3.918163568568325*^9, 3.918587407268053*^9,
3.9190016728292847`*^9, 3.9195037040688963`*^9, 3.9198942834595957`*^9,
3.920234712218867*^9, 3.920662078423338*^9, 3.921093853155019*^9,
3.921237317218327*^9, 3.921696325797345*^9, 3.921851598339695*^9,
3.921851647511963*^9, {3.921851723783431*^9, 3.921851736631104*^9},
3.921851789631633*^9, 3.922439881880352*^9, 3.922748366740074*^9,
3.923045431914585*^9, 3.923572464604835*^9, 3.923778956655144*^9,
3.924544421212076*^9, 3.925203572822671*^9, 3.925848169754739*^9,
3.925848217744079*^9, 3.926438083805722*^9, {3.9264381205815907`*^9,
3.9264381421853952`*^9}, 3.9268502289991503`*^9, 3.927388977392035*^9,
3.92757446555766*^9, 3.92782075468937*^9, 3.927990566625127*^9,
3.928273181747738*^9, 3.928273253177276*^9, 3.928445235964464*^9,
3.928879595108038*^9, 3.929093886948715*^9, {3.9293606314921618`*^9,
3.929360652965334*^9}, 3.929714464833693*^9, 3.929988766810141*^9,
3.930079284149286*^9, 3.930510896991767*^9, 3.930510938300539*^9,
3.931113466961287*^9, {3.9313767836902103`*^9, 3.931376810889453*^9},
3.9316146196756153`*^9, {3.931804387786202*^9, 3.931804406214263*^9},
3.9321123856670113`*^9, 3.9323876432660027`*^9, 3.932802530588872*^9,
3.932934182040694*^9, 3.933185625332106*^9, 3.933683992394909*^9,
3.933944168693449*^9, 3.934049101145823*^9, 3.9341340358613033`*^9,
3.9344541086606693`*^9, 3.934663074849002*^9, 3.9349695431536903`*^9,
3.9352387720342407`*^9, 3.93550336171005*^9, 3.93586909609081*^9,
3.935941745580612*^9, 3.936030389292848*^9, 3.93628015526616*^9,
3.936444367786038*^9, 3.936805488935912*^9, 3.9369590965559273`*^9,
3.937168651459606*^9, 3.937300611594054*^9, 3.937489671622321*^9,
3.937558235442833*^9},
CellLabel->"Out[22]=",ExpressionUUID->"409cbdc1-93b9-42fa-a23f-7234dce449b1"]
}, Open ]]
},
WindowSize->{1234, 1257},
WindowMargins->{{0, Automatic}, {Automatic, 0}},
FrontEndVersion->"14.1 for Mac OS X ARM (64-bit) (July 16, 2024)",
StyleDefinitions->"Default.nb",
ExpressionUUID->"a68abeaf-41ba-46e4-a91b-e09f414e080e"
]
(* End of Notebook Content *)
(* Internal cache information *)
(*CellTagsOutline
CellTagsIndex->{}
*)
(*CellTagsIndex
CellTagsIndex->{}
*)
(*NotebookFileOutline
Notebook[{
Cell[CellGroupData[{
Cell[583, 22, 164, 2, 29, "Input",ExpressionUUID->"7134d186-2f8f-4a5d-b8fd-e1205134ab62"],
Cell[750, 26, 789, 11, 33, "Output",ExpressionUUID->"c43049e9-3575-49ae-bd6b-bc2ddfd68621"]
}, Open ]],
Cell[1554, 40, 3243, 71, 151, "Input",ExpressionUUID->"e5e34011-aa3d-4e95-90b1-863054ac32f5"],
Cell[CellGroupData[{
Cell[4822, 115, 3845, 85, 417, "Input",ExpressionUUID->"55c17c4f-14a9-40f1-a01c-ab0b0c9b3309"],
Cell[8670, 202, 24579, 494, 461, "Output",ExpressionUUID->"409cbdc1-93b9-42fa-a23f-7234dce449b1"]
}, Open ]]
}
]
*)