{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "<img src=\"http://root.cern.ch/img/logos/ROOT_Logo/website-banner/website-banner-%28not%20root%20picture%29.jpg\" alt=\"EP-SFT\" style=\"float: left; width: 40%; margin-right: 10%; margin-left: 1%; margin-bottom: 2.0em;\"/>\n", "<img src=\"https://spark.apache.org/images/spark-logo-trademark.png\" alt=\"Spark\" style=\"float: right; width: 15%; margin-right: 10%; margin-left: 10%; margin-bottom: 1.0em;\"/>\n", "\n", "# Physics Analysis: Dimuon spectrum\n", "\n", "This tutorial shows you how to analyze datasets using `RDataFrame` from a Python notebook, offloading computations to a [Spark](https://spark.apache.org/) cluster. The example analysis performs the following steps:\n", "\n", "1. Connect a ROOT dataframe to a dataset containing 61 mio. events recorded by CMS in 2012\n", "2. Filter the events being relevant for your analysis\n", "3. Compute the invariant mass of the selected dimuon candidates\n", "4. Plot the invariant mass spectrum showing resonances up to the Z mass\n", "\n", "This material is based on the analysis done by Stefan Wunsch, available [here](http://opendata.web.cern.ch/record/12342) in CERN's Open Data portal.\n", "\n", "This notebook has been tested using the following configurations on CERN SWAN:\n", "\n", "* *Spark in local mode*: No cluster attached\n", "* *Spark cluster*: Cloud Containers (K8s)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Prelude: Using a Distributed RDataFrame\n", "\n", "While ROOT is implemented in C++, it provides automatic Python bindings, called [PyROOT](https://root.cern/manual/python/). This means that all the ROOT C++ functionality is also available from Python, including `RDataFrame`." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Welcome to JupyROOT 6.26/08\n" ] } ], "source": [ "# This import gives access to all the ROOT C++ code from Python\n", "import ROOT" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In addition, there is a package called `PyRDF` - soon to be integrated in ROOT - that implements a layer on top of `RDataFrame`. `PyRDF` allows analyses written with `RDataFrame` to be executed on a set of distributed resources.\n", "\n", "<img src=\"dist_rdf_design.png\" alt=\"Distributed RDataFrame\">" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In this notebook, we are going to use the [Spark](https://spark.apache.org/) backend of `PyRDF` to submit `RDataFrame` computations to an external Spark cluster. Note that the connection to the cluster needs to be done prior to the execution of this notebook (click on the `?` button on the top bar for help on how to connect to Spark clusters from SWAN)." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import PyRDF\n", "\n", "# Select Spark backend, partition the dataset in 16 fragments when running distributedly\n", "PyRDF.use(\"spark\", {'npartitions': '16'})\n", "\n", "# Use RDataFrame through PyRDF\n", "from PyRDF import RDataFrame" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Create a ROOT dataframe\n", "\n", "The creation of the ROOT dataframe and the construction of the computation graph via `PyRDF` are done in the exact same way as with plain `RDataFrame` from Python. In practice, this means that the same code can be executed locally or distributedly just by switching the backend we would like to use.\n", "\n", "Let's see that in action. First we will create a ROOT dataframe that is connected to a dataset named `Events` stored in a ROOT file. The file is pulled in via [XRootD](http://xrootd.org/) from EOS public, but note how it could also be stored in your CERNBox space or in any other EOS repository accessible from SWAN (e.g. the experiment ones).\n", "\n", "The dataset `Events` is a `TTree` (a \"table\" in first order) and has the following branches (also referred to as \"columns\"):\n", "\n", "| Branch name | Data type | Description |\n", "|-------------|-----------|-------------|\n", "| `nMuon` | `unsigned int` | Number of muons in this event |\n", "| `Muon_pt` | `float[nMuon]` | Transverse momentum of the muons stored as an array of size `nMuon` |\n", "| `Muon_eta` | `float[nMuon]` | Pseudo-rapidity of the muons stored as an array of size `nMuon` |\n", "| `Muon_phi` | `float[nMuon]` | Azimuth of the muons stored as an array of size `nMuon` |\n", "| `Muon_charge` | `int[nMuon]` | Charge of the muons stored as an array of size `nMuon` and either -1 or 1 |\n", "| `Muon_mass` | `float[nMuon]` | Mass of the muons stored as an array of size `nMuon` |" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "df = RDataFrame(\"Events\", \"root://eospublic.cern.ch//eos/opendata/cms/derived-data/AOD2NanoAODOutreachTool/Run2012BC_DoubleMuParked_Muons.root\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Run on the entire dataset\n", "\n", "The full dataset contains half a year of CMS data taking in 2012 with 61 mio events. That would be a bit long to process if we just used the few cores provided by the SWAN session itself. Luckily, we can offload our computations to a Spark cluster and get the result back for inspection in the notebook.\n", "\n", "Remember this rule of thumb:\n", "1. In the exploratory phase of your analysis, you can run your `RDataFrame` computation on a small subset of your input dataset. The resources of the SWAN session (a few cores and GBs of RAM) should be enough for that purpose. At this stage, `RDataFrame::Range` comes in handy to execute on less data.\n", "2. When you are ready to run on the entire dataset, you can use `RDataFrame` via `PyRDF` and select the Spark backend. Since the computations are offloaded to a Spark cluster, you won't be overloading your SWAN session." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "# No need to select a subset of the dataset, we've got distributed resources!\n", "# df_range = df.Range(1000000)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Filter relevant events for this analysis\n", "\n", "Physics datasets are often general purpose datasets and therefore need extensive filtering of the events for the actual analysis. Here, we implement only a simple selection based on the number of muons and the charge to cut down the dataset in events that are relevant for our study.\n", "\n", "In particular, we are applying two filters to keep:\n", "1. Events with exactly two muons\n", "2. Events with muons of opposite charge" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "df_2mu = df.Filter(\"nMuon == 2\", \"Events with exactly two muons\")\n", "df_oc = df_2mu.Filter(\"Muon_charge[0] != Muon_charge[1]\", \"Muons with opposite charge\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Compute the invariant mass of the dimuon system\n", "\n", "Since we want to see the resonances in the mass spectrum, where dimuon events are more likely, we need to compute the invariant mass from the four-vectors of the muon candidates. Because this operation is non-trivial, we will use ROOT's `ROOT::VecOps::InvariantMass` function to do the job for us.\n", "\n", "The invariant mass will be stored in a new column that we will create with the `Define` operation of `RDataFrame`. The parameters of `Define` are the name of the new column and a string with the function to be invoked, which includes the dataset columns to be used as arguments for the such function.\n", "\n", "Note how, even though `ROOT::VecOps::InvariantMass` is a C++ function, we can use it in our `RDataFrame` workflow from Python: the second parameter of `Define` is a string that contains C++ code. Such code will be just-in-time compiled by ROOT and called during the event loop in C++. This allows to benefit from C++ performance in computationally-expensive code even when programming in Python." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "df_mass = df_oc.Define(\"Dimuon_mass\", \"ROOT::VecOps::InvariantMass(Muon_pt, Muon_eta, Muon_phi, Muon_mass)\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Make a histogram of the dimuon spectrum\n", "\n", "As (almost) always in physics, we have a look at the results in the form of a histogram. Let's book a histogram as one endpoint of our computation graph." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "nbins = 30000\n", "low = 0.25\n", "up = 300\n", "h = df_mass.Histo1D((\"Dimuon_mass\", \"Dimuon_mass\", nbins, low, up), \"Dimuon_mass\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Plot the dimuon spectrum\n", "\n", "Now, the computation graph is set up. Next, we want to have a look at the result.\n", "\n", "Note that the event loop actually runs the first time we try to access the histogram object (results of an `RDataFrame` graph are computed lazily). Therefore, since we selected the Spark backend, the offloading of the computations happens in the cell below. You should see a monitoring display appearing in the output of the cell that tells you about the progress of the Spark job.\n", "\n", "`%%time` measures the time spend in the full cell. You can compare it with how long it takes to run locally over just 1 mio. events!" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "[Stage 0:=====================================================> (15 + 1) / 16]\r" ] }, { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 555 ms, sys: 109 ms, total: 664 ms\n", "Wall time: 39.3 s\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "\r", " \r" ] }, { "data": { "text/plain": [ "<cppyy.gbl.TLatex object at 0xbb294f0>" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%time\n", "\n", "ROOT.gStyle.SetOptStat(0); ROOT.gStyle.SetTextFont(42)\n", "c = ROOT.TCanvas(\"c\", \"\", 800, 700)\n", "c.SetLogx(); c.SetLogy()\n", "h.SetTitle(\"\")\n", "h.GetXaxis().SetTitle(\"m_{#mu#mu} (GeV)\"); h.GetXaxis().SetTitleSize(0.04)\n", "h.GetYaxis().SetTitle(\"N_{Events}\"); h.GetYaxis().SetTitleSize(0.04)\n", "h.Draw()\n", "\n", "label = ROOT.TLatex(); label.SetNDC(True)\n", "label.SetTextSize(0.040); label.DrawLatex(0.100, 0.920, \"#bf{CMS Open Data}\")\n", "label.SetTextSize(0.030); label.DrawLatex(0.500, 0.920, \"#sqrt{s} = 8 TeV, L_{int} = 11.6 fb^{-1}\");" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "ROOT provides interactive JavaScript graphics for Jupyter, which can be activated with the `%jsroot` magic. Click and drag on the axis to zoom in and double click to reset the view." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "<div id=\"root_plot_1669027746757\"\n", " style=\"width: 796px; height: 672px\">\n", "</div>\n", "<script>\n", "\n", "function display_root_plot_1669027746757(Core) {\n", " let obj = Core.parse({\"_typename\":\"TCanvas\",\"fUniqueID\":0,\"fBits\":3342344,\"fLineColor\":1,\"fLineStyle\":1,\"fLineWidth\":1,\"fFillColor\":0,\"fFillStyle\":1001,\"fLeftMargin\":0.1,\"fRightMargin\":0.1,\"fBottomMargin\":0.1,\"fTopMargin\":0.1,\"fXfile\":2,\"fYfile\":2,\"fAfile\":1,\"fXstat\":0.99,\"fYstat\":0.99,\"fAstat\":2,\"fFrameFillColor\":0,\"fFrameLineColor\":1,\"fFrameFillStyle\":1001,\"fFrameLineStyle\":1,\"fFrameLineWidth\":1,\"fFrameBorderSize\":1,\"fFrameBorderMode\":0,\"fX1\":-0.986957675761027,\"fY1\":-1.04943179603114,\"fX2\":2.86201893915273,\"fY2\":6.43458576155819,\"fXtoAbsPixelk\":204.111009485105,\"fXtoPixelk\":204.111009485105,\"fXtoPixel\":206.808219336982,\"fYtoAbsPixelk\":577.770157899095,\"fYtoPixelk\":577.770157899095,\"fYtoPixel\":-89.7913446660135,\"fUtoAbsPixelk\":5e-5,\"fUtoPixelk\":5e-5,\"fUtoPixel\":796,\"fVtoAbsPixelk\":672.00005,\"fVtoPixelk\":672,\"fVtoPixel\":-672,\"fAbsPixeltoXk\":-0.986957675761027,\"fPixeltoXk\":-0.986957675761027,\"fPixeltoX\":0.00483539775742934,\"fAbsPixeltoYk\":6.43458576155819,\"fPixeltoYk\":-1.04943179603114,\"fPixeltoY\":-0.0111369308892698,\"fXlowNDC\":0,\"fYlowNDC\":0,\"fXUpNDC\":1,\"fYUpNDC\":1,\"fWNDC\":1,\"fHNDC\":1,\"fAbsXlowNDC\":0,\"fAbsYlowNDC\":0,\"fAbsWNDC\":1,\"fAbsHNDC\":1,\"fUxmin\":-0.602059991327962,\"fUymin\":-0.301029995663981,\"fUxmax\":2.47712125471966,\"fUymax\":5.68618396119104,\"fTheta\":30,\"fPhi\":30,\"fAspectRatio\":0,\"fNumber\":0,\"fTickx\":0,\"fTicky\":0,\"fLogx\":1,\"fLogy\":1,\"fLogz\":0,\"fPadPaint\":0,\"fCrosshair\":0,\"fCrosshairPos\":0,\"fBorderSize\":2,\"fBorderMode\":0,\"fModified\":false,\"fGridx\":false,\"fGridy\":false,\"fAbsCoord\":false,\"fEditable\":true,\"fFixedAspectRatio\":false,\"fPrimitives\":{\"_typename\":\"TList\",\"name\":\"TList\",\"arr\":[{\"_typename\":\"TFrame\",\"fUniqueID\":0,\"fBits\":8,\"fLineColor\":1,\"fLineStyle\":1,\"fLineWidth\":1,\"fFillColor\":0,\"fFillStyle\":1001,\"fX1\":-0.602059991327962,\"fY1\":-0.301029995663981,\"fX2\":2.47712125471966,\"fY2\":5.68618396119104,\"fBorderSize\":1,\"fBorderMode\":0},{\"_typename\":\"TH1D\",\"fUniqueID\":0,\"fBits\":8,\"fName\":\"Dimuon_mass\",\"fTitle\":\"\",\"fLineColor\":602,\"fLineStyle\":1,\"fLineWidth\":1,\"fFillColor\":0,\"fFillStyle\":1001,\"fMarkerColor\":1,\"fMarkerStyle\":1,\"fMarkerSize\":1,\"fNcells\":30002,\"fXaxis\":{\"_typename\":\"TAxis\",\"fUniqueID\":0,\"fBits\":0,\"fName\":\"xaxis\",\"fTitle\":\"m_{#mu#mu} (GeV)\",\"fNdivisions\":510,\"fAxisColor\":1,\"fLabelColor\":1,\"fLabelFont\":42,\"fLabelOffset\":0.005,\"fLabelSize\":0.035,\"fTickLength\":0.03,\"fTitleOffset\":1,\"fTitleSize\":0.04,\"fTitleColor\":1,\"fTitleFont\":42,\"fNbins\":30000,\"fXmin\":0.25,\"fXmax\":300,\"fXbins\":[],\"fFirst\":0,\"fLast\":0,\"fBits2\":0,\"fTimeDisplay\":false,\"fTimeFormat\":\"\",\"fLabels\":null,\"fModLabs\":null},\"fYaxis\":{\"_typename\":\"TAxis\",\"fUniqueID\":0,\"fBits\":0,\"fName\":\"yaxis\",\"fTitle\":\"N_{Events}\",\"fNdivisions\":510,\"fAxisColor\":1,\"fLabelColor\":1,\"fLabelFont\":42,\"fLabelOffset\":0.005,\"fLabelSize\":0.035,\"fTickLength\":0.03,\"fTitleOffset\":0,\"fTitleSize\":0.04,\"fTitleColor\":1,\"fTitleFont\":42,\"fNbins\":1,\"fXmin\":0,\"fXmax\":1,\"fXbins\":[],\"fFirst\":0,\"fLast\":0,\"fBits2\":0,\"fTimeDisplay\":false,\"fTimeFormat\":\"\",\"fLabels\":null,\"fModLabs\":null},\"fZaxis\":{\"_typename\":\"TAxis\",\"fUniqueID\":0,\"fBits\":0,\"fName\":\"zaxis\",\"fTitle\":\"\",\"fNdivisions\":510,\"fAxisColor\":1,\"fLabelColor\":1,\"fLabelFont\":42,\"fLabelOffset\":0.005,\"fLabelSize\":0.035,\"fTickLength\":0.03,\"fTitleOffset\":1,\"fTitleSize\":0.035,\"fTitleColor\":1,\"fTitleFont\":42,\"fNbins\":1,\"fXmin\":0,\"fXmax\":1,\"fXbins\":[],\"fFirst\":0,\"fLast\":0,\"fBits2\":0,\"fTimeDisplay\":false,\"fTimeFormat\":\"\",\"fLabels\":null,\"fModLabs\":null},\"fBarOffset\":0,\"fBarWidth\":1000,\"fEntries\":24067843,\"fTsumw\":23948043,\"fTsumw2\":23948043,\"fTsumwx\":832179610.971229,\"fTsumwx2\":58910474487.9847,\"fMaximum\":-1111,\"fMinimum\":-1111,\"fNormFactor\":0,\"fContour\":[],\"fSumw2\":[],\"fOption\":\"\",\"fFunctions\":{\"_typename\":\"TList\",\"name\":\"TList\",\"arr\":[],\"opt\":[]},\"fBufferSize\":0,\"fBuffer\":[],\"fBinStatErrOpt\":0,\"fStatOverflows\":2,\"fArray\":{\"$arr\":\"Float64\",\"len\":30002,\"v\":[111888,35537,33865,32941,31693,30443,28675,28152,27150,26884,25033,24189,23611,22663,22341,21438,21449,20413,19752,19626,19128,18960,18744,17912,17774,17470,17502,17051,16956,17526,18822,18501,16985,17284,16803,16793,16603,16861,17069,16939,17220,17153,17351,17318,17943,17917,18316,18485,18876,19304,20439,22646,27801,36458,38812,30176,22773,19623,18765,17926,17752,17649,17772,17644,17407,17524,17578,17391,17549,17448,17973,18015,18371,18660,20019,23207,30446,40200,38724,28918,22437,19813,18882,18287,18321,18068,18317,18043,18059,18266,18428,18307,18415,18466,18545,18541,18560,18566,18625,18719,18862,18586,18601,18879,18922,18838,18772,18716,18922,18846,18749,18907,18889,18777,18801,18704,18748,18859,18750,19022,18518,18779,18613,18876,18452,18625,18581,18424,18435,18363,18507,18382,18342,18077,18474,18540,18065,18475,18433,18017,18042,18292,18130,17916,18247,18022,18397,18007,17979,18132,18343,17990,18125,18147,18342,18026,18123,18228,18340,18279,18395,18261,18212,18047,18359,18118,18121,18381,18271,18592,18280,18079,18102,18295,18365,18106,18155,18368,18121,18181,18058,18205,18192,17957,17705,17803,17945,17898,17987,18023,17752,17697,17570,17600,17701,17524,17677,17367,17501,17359,17145,17334,17076,16971,16890,16821,16868,16929,16686,16453,16738,16491,16274,16514,16227,16217,15924,15876,15865,15829,15705,15683,15802,15502,15272,14994,15347,15126,14883,14778,14922,14560,14593,14407,14561,14511,14058,14068,14064,14133,13700,13566,13947,13370,13451,13219,13409,13200,13185,13029,13143,12872,12790,12987,12723,12558,12704,12714,12551,12541,12556,12538,12480,12700,12715,12998,12946,12983,13184,13583,14435,14913,16130,17351,19323,22492,27022,34034,42750,57455,77933,107057,146581,192421,234883,256233,243848,204569,154642,108881,75569,52377,37062,27272,20566,16271,13605,11334,10237,9050,8479,8087,7826,7356,7224,6886,6736,6545,6420,6382,5999,6137,5895,5738,5828,5621,5734,5449,5552,5401,5292,5211,5199,5202,5159,4879,5016,4831,4924,4929,4911,4800,4979,5207,5159,5537,5991,6363,7002,8190,9562,10652,12574,14192,14495,14102,12569,10698,8849,7603,6276,5363,4717,4376,4001,3913,3719,3518,3445,3399,3242,3328,3135,3142,3166,2970,3182,3114,3117,3129,2945,2963,3033,2982,3039,2875,2911,2871,2842,2800,2710,2873,2799,2779,2750,2758,2709,2687,2728,2655,2696,2641,2723,2700,2703,2668,2662,2630,2678,2536,2640,2639,2582,2576,2525,2500,2489,2583,2562,2528,2549,2550,2514,2515,2571,2577,2473,2440,2414,2487,2503,2470,2518,2478,2467,2543,2419,2539,2500,2503,2522,2497,2498,2450,2500,2475,2590,2473,2491,2523,2417,2419,2490,2387,2511,2416,2385,2639,2456,2484,2461,2492,2464,2432,2472,2503,2522,2559,2551,2475,2524,2418,2548,2537,2407,2381,2477,2444,2463,2454,2490,2593,2492,2473,2445,2486,2417,2418,2383,2480,2537,2511,2564,2459,2448,2501,2425,2464,2525,2490,2443,2497,2424,2444,2504,2479,2469,2485,2457,2465,2457,2462,2483,2440,2422,2513,2410,2450,2489,2489,2478,2503,2483,2434,2592,2521,2496,2499,2471,2399,2518,2400,2434,2375,2538,2462,2423,2461,2521,2437,2395,2435,2527,2429,2464,2443,2481,2423,2399,2423,2445,2450,2476,2457,2398,2461,2452,2418,2458,2448,2469,2482,2498,2418,2456,2477,2433,2411,2367,2379,2413,2415,2398,2335,2381,2359,2384,2430,2403,2467,2469,2390,2391,2412,2443,2375,2347,2379,2417,2378,2402,2439,2364,2421,2395,2467,2314,2408,2369,2348,2412,2388,2453,2435,2475,2350,2437,2330,2418,2380,2395,2443,2374,2448,2396,2413,2358,2367,2364,2424,2297,2366,2394,2296,2359,2345,2291,2323,2311,2255,2325,2388,2377,2378,2341,2369,2259,2328,2325,2306,2297,2291,2386,2268,2323,2268,2305,2190,2219,2217,2349,2335,2162,2336,2140,2287,2244,2340,2236,2168,2215,2214,2238,2252,2195,2162,2178,2165,2235,2209,2277,2164,2176,2192,2202,2217,2173,2091,2159,2141,2205,2119,2185,2160,2178,2036,2099,2069,2066,2158,2105,2097,2192,2071,2120,2164,2100,2052,2037,2208,2118,2064,2086,2065,2058,1971,2089,2090,2063,2129,2107,2060,2086,2029,2088,2025,1991,2059,2062,2061,2001,2001,1974,2018,1978,1979,1990,1908,2018,1975,1970,1996,1991,1979,1986,2034,1861,1984,1957,1966,1868,2044,1983,1978,1916,1962,1966,1959,1884,1857,1961,1904,1943,1943,1879,1923,2005,1879,1822,1972,1884,1878,1885,1887,1937,1845,1926,1840,1855,1867,1983,1869,1801,1916,1894,1933,1841,1919,1854,1853,1831,1867,1915,1910,1840,1840,1854,1902,1808,1834,1817,1799,1820,1811,1829,1835,1797,1850,1870,1810,1774,1871,1742,1815,1820,1822,1849,1846,1794,1763,1821,1786,1805,1839,1864,1820,1753,1795,1834,1794,1853,1802,1827,1871,1743,1729,1811,1775,1661,1800,1766,1850,1769,1794,1712,1748,1833,1784,1827,1730,1745,1835,1769,1739,1673,1810,1796,1818,1736,1741,1735,1718,1750,1814,1760,1777,1743,1796,1710,1799,1698,1750,1789,1825,1712,1791,1726,1795,1760,1826,1717,1783,1786,1782,1816,1765,1763,1765,1865,1821,1833,1765,1850,1876,1853,1943,1891,1879,1941,1959,2018,1931,2042,1959,1945,2103,2082,2096,2138,2113,2227,2267,2425,2402,2487,2524,2680,2668,2778,3027,3088,3236,3450,3821,3944,4225,4401,4838,5181,5657,6246,6519,7029,7542,8208,8785,9499,9867,10351,10696,11079,11133,11176,10921,10612,10246,9658,9106,8421,7845,7196,6648,6115,5504,5168,4627,4433,4092,3724,3521,3373,3235,3072,2793,2855,2689,2607,2505,2479,2514,2491,2470,2458,2604,2528,2506,2515,2570,2564,2807,2792,3022,3115,3310,3494,3567,3683,3921,4151,4444,4654,5013,5202,5392,5629,5639,5988,6083,5995,6001,5927,5493,5474,5184,5049,4786,4674,4450,4229,3958,3891,3776,3582,3636,3495,3466,3513,3521,3567,3543,3655,3759,3919,3912,4271,4337,4402,4496,4572,4635,4661,4665,4582,4553,4441,4316,4055,3836,3715,3678,3387,3081,3050,2784,2698,2545,2493,2388,2298,2190,2134,2054,1964,1942,1805,1864,1852,1750,1807,1791,1714,1625,1623,1711,1650,1605,1593,1598,1646,1545,1589,1573,1568,1609,1507,1549,1568,1588,1608,1605,1582,1635,1508,1520,1524,1574,1532,1470,1579,1504,1552,1493,1562,1456,1475,1494,1483,1548,1589,1496,1574,1543,1478,1535,1494,1523,1520,1427,1454,1478,1593,1530,1500,1450,1549,1498,1513,1468,1459,1544,1476,1453,1489,1486,1533,1542,1476,1481,1448,1489,1497,1465,1487,1462,1512,1476,1431,1503,1424,1467,1422,1474,1509,1547,1521,1515,1582,1528,1455,1504,1491,1522,1524,1484,1485,1529,1509,1523,1524,1481,1554,1476,1505,1455,1502,1470,1471,1523,1511,1500,1508,1483,1524,1518,1491,1530,1508,1431,1437,1411,1485,1529,1513,1524,1425,1486,1465,1511,1518,1541,1528,1501,1480,1531,1429,1454,1445,1477,1387,1481,1540,1485,1441,1551,1457,1471,1479,1469,1441,1486,1483,1469,1385,1464,1471,1489,1525,1483,1459,1552,1484,1444,1554,1510,1504,1520,1470,1513,1456,1488,1438,1452,1479,1464,1536,1366,1459,1495,1513,1519,1463,1364,1449,1549,1430,1438,1465,1447,1435,1427,1520,1456,1503,1450,1499,1493,1480,1473,1369,1529,1475,1366,1457,1520,1435,1509,1507,1441,1483,1464,1488,1429,1396,1495,1449,1444,1498,1510,1511,1435,1419,1506,1461,1492,1391,1475,1396,1488,1477,1416,1470,1426,1468,1457,1411,1514,1535,1452,1442,1394,1440,1424,1437,1475,1493,1418,1435,1436,1431,1442,1416,1413,1428,1453,1449,1431,1465,1477,1422,1454,1483,1479,1522,1486,1449,1456,1419,1438,1443,1443,1516,1516,1500,1518,1430,1472,1499,1466,1497,1437,1520,1456,1478,1401,1447,1423,1486,1443,1458,1472,1444,1429,1529,1490,1479,1414,1502,1542,1404,1488,1472,1495,1459,1435,1418,1365,1407,1430,1474,1522,1392,1458,1431,1396,1418,1408,1465,1555,1480,1478,1486,1488,1423,1420,1453,1495,1409,1415,1441,1487,1379,1461,1478,1488,1420,1406,1457,1481,1444,1503,1389,1479,1432,1441,1444,1466,1400,1405,1514,1466,1476,1364,1455,1408,1401,1442,1482,1461,1379,1407,1405,1506,1404,1440,1453,1367,1451,1469,1485,1425,1473,1453,1482,1412,1435,1421,1525,1411,1559,1466,1493,1468,1355,1427,1418,1437,1423,1511,1456,1443,1384,1431,1460,1438,1384,1442,1465,1475,1435,1459,1400,1381,1394,1433,1439,1482,1476,1471,1442,1432,1428,1416,1430,1384,1456,1501,1412,1430,1375,1445,1510,1392,1434,1398,1418,1458,1460,1402,1416,1390,1480,1540,1498,1379,1426,1457,1375,1406,1445,1479,1354,1450,1393,1426,1440,1392,1428,1398,1387,1439,1430,1366,1464,1429,1466,1486,1422,1411,1399,1347,1501,1448,1418,1419,1414,1443,1457,1408,1374,1450,1411,1441,1451,1456,1415,1384,1384,1454,1443,1390,1430,1449,1386,1454,1379,1496,1440,1414,1429,1437,1429,1474,1400,1456,1482,1426,1385,1422,1457,1426,1389,1371,1465,1376,1480,1417,1444,1436,1375,1434,1458,1395,1415,1359,1360,1458,1447,1432,1394,1411,1401,1447,1441,1450,1363,1437,1454,1436,1420,1401,1405,1376,1437,1392,1424,1397,1452,1358,1399,1390,1453,1399,1405,1416,1404,1382,1397,1441,1367,1381,1412,1427,1389,1372,1450,1397,1339,1444,1412,1406,1403,1418,1422,1455,1409,1422,1463,1413,1458,1475,1415,1399,1365,1450,1391,1414,1397,1363,1427,1443,1384,1420,1467,1394,1441,1419,1332,1428,1358,1450,1362,1432,1416,1388,1382,1358,1429,1457,1415,1409,1428,1440,1426,1433,1382,1514,1439,1406,1430,1402,1379,1332,1433,1455,1435,1442,1376,1457,1392,1365,1533,1386,1313,1424,1403,1359,1392,1432,1423,1433,1380,1406,1421,1378,1408,1409,1508,1415,1438,1391,1441,1423,1426,1419,1402,1430,1402,1409,1393,1424,1404,1433,1428,1441,1439,1377,1437,1428,1408,1371,1432,1394,1390,1451,1419,1448,1315,1409,1407,1397,1447,1441,1420,1463,1441,1440,1382,1420,1430,1464,1470,1422,1405,1339,1418,1363,1379,1425,1422,1417,1486,1451,1399,1424,1442,1459,1416,1427,1350,1392,1359,1435,1505,1470,1475,1427,1456,1331,1440,1435,1383,1449,1407,1445,1378,1430,1379,1454,1408,1435,1439,1453,1389,1432,1369,1490,1375,1391,1465,1452,1375,1370,1394,1477,1400,1346,1436,1408,1436,1487,1432,1490,1365,1448,1380,1478,1490,1375,1380,1416,1463,1478,1400,1429,1339,1422,1388,1424,1370,1413,1407,1450,1421,1406,1414,1456,1463,1494,1411,1472,1452,1409,1490,1436,1404,1448,1401,1373,1458,1430,1394,1391,1341,1427,1449,1383,1446,1530,1429,1425,1394,1362,1462,1430,1413,1458,1464,1502,1439,1507,1432,1342,1422,1518,1419,1504,1478,1513,1382,1408,1415,1489,1418,1471,1514,1480,1444,1485,1497,1429,1467,1433,1410,1421,1450,1463,1403,1431,1453,1474,1424,1429,1420,1529,1481,1408,1575,1413,1374,1499,1395,1437,1459,1463,1506,1428,1469,1501,1498,1453,1454,1447,1529,1488,1509,1467,1483,1481,1437,1476,1427,1442,1533,1457,1474,1496,1474,1506,1501,1453,1501,1490,1540,1496,1479,1509,1461,1518,1490,1497,1520,1492,1518,1500,1389,1560,1537,1545,1490,1486,1538,1500,1498,1582,1515,1481,1478,1461,1549,1562,1527,1514,1517,1547,1515,1514,1520,1499,1520,1530,1498,1495,1508,1528,1553,1552,1467,1592,1514,1507,1452,1550,1572,1528,1594,1511,1513,1526,1522,1601,1534,1597,1466,1522,1563,1534,1547,1559,1534,1551,1608,1605,1523,1566,1591,1592,1615,1542,1520,1547,1637,1539,1583,1635,1553,1600,1539,1552,1561,1648,1522,1615,1601,1617,1559,1599,1543,1719,1578,1577,1617,1688,1594,1643,1602,1595,1635,1624,1691,1583,1655,1656,1748,1702,1623,1728,1676,1671,1810,1625,1662,1740,1694,1692,1717,1756,1745,1741,1620,1754,1743,1722,1797,1745,1757,1783,1836,1719,1803,1829,1866,1799,1818,1834,1829,1809,1829,1762,1846,1814,1885,1856,1886,1875,1882,1858,1800,1923,1916,1927,1876,1906,1878,1867,1874,1933,1908,1939,1980,1916,1981,1914,1969,1837,1985,2008,2019,1993,2013,2006,2087,1994,1991,2030,2035,2057,2033,2019,2077,1991,2019,1981,2046,1982,2045,2017,1997,2008,2119,2061,2092,2008,2107,2085,2153,2138,2024,2142,2182,2102,2077,2134,2205,2012,2218,2163,2204,2084,2133,2218,2261,2242,2120,2194,2107,2175,2226,2287,2303,2164,2167,2123,2218,2150,2372,2281,2269,2196,2217,2257,2257,2318,2275,2208,2250,2186,2293,2210,2302,2275,2274,2397,2409,2367,2321,2344,2238,2303,2470,2420,2304,2350,2406,2445,2424,2457,2430,2350,2406,2426,2391,2440,2418,2357,2400,2418,2489,2380,2462,2446,2506,2557,2499,2426,2541,2590,2506,2517,2505,2451,2580,2566,2525,2523,2605,2488,2535,2485,2507,2633,2565,2528,2525,2565,2569,2575,2591,2591,2643,2641,2647,2659,2639,2568,2591,2597,2699,2653,2673,2632,2616,2566,2669,2704,2782,2726,2657,2692,2685,2677,2651,2835,2718,2761,2781,2693,2718,2731,2781,2751,2804,2752,2817,2752,2808,2861,2649,2745,2824,2745,2753,2752,2724,2819,2889,2912,2863,2729,2820,2853,2807,2859,2824,2890,2850,2918,2977,2883,2917,2909,2999,2910,2896,2914,2960,2912,2863,2919,3029,3058,2992,2926,2990,3001,2987,3039,3000,2924,3037,3098,2952,2904,3001,3010,2959,3119,3050,3011,3064,3090,3005,3061,3119,3003,3079,3068,3105,3111,3062,3085,3168,3023,2925,3092,3111,3107,3094,3240,3081,3138,3184,3109,3194,3200,3150,3076,3111,3195,3136,3125,3121,3210,3159,3265,3151,3268,3163,3191,3214,3214,3182,3189,3317,3258,3243,3197,3233,3158,3297,3324,3230,3316,3260,3248,3304,3404,3312,3318,3340,3322,3279,3291,3316,3286,3390,3316,3446,3403,3239,3361,3325,3329,3243,3312,3320,3303,3412,3381,3328,3305,3330,3352,3373,3439,3349,3576,3450,3327,3323,3294,3367,3395,3298,3418,3460,3432,3464,3443,3456,3352,3567,3429,3436,3523,3510,3455,3467,3435,3419,3353,3571,3427,3428,3537,3507,3521,3480,3444,3443,3338,3420,3517,3507,3449,3545,3514,3462,3453,3481,3425,3435,3424,3519,3540,3337,3474,3570,3461,3433,3592,3590,3497,3487,3612,3472,3600,3629,3477,3469,3527,3510,3515,3629,3574,3689,3583,3589,3538,3492,3506,3529,3545,3585,3599,3412,3552,3490,3470,3497,3574,3467,3593,3574,3527,3533,3500,3559,3556,3652,3566,3523,3551,3554,3570,3652,3474,3618,3582,3601,3527,3532,3613,3541,3616,3510,3609,3490,3526,3651,3518,3579,3595,3601,3610,3549,3617,3536,3625,3580,3568,3601,3642,3560,3552,3606,3654,3566,3591,3538,3477,3494,3546,3654,3643,3523,3728,3590,3552,3584,3535,3589,3687,3701,3565,3559,3492,3633,3654,3587,3411,3555,3600,3681,3580,3604,3635,3627,3610,3653,3598,3680,3486,3616,3614,3570,3617,3710,3548,3507,3565,3571,3626,3575,3546,3545,3589,3623,3687,3525,3600,3554,3592,3549,3552,3584,3555,3654,3592,3631,3699,3627,3595,3606,3556,3583,3683,3616,3572,3584,3644,3541,3598,3583,3576,3606,3533,3648,3530,3569,3542,3597,3575,3570,3531,3623,3593,3603,3514,3572,3583,3653,3647,3652,3568,3632,3601,3663,3556,3613,3567,3562,3567,3681,3604,3600,3478,3611,3562,3721,3591,3606,3542,3488,3457,3628,3533,3555,3594,3696,3649,3523,3544,3462,3651,3405,3468,3558,3563,3589,3544,3557,3604,3666,3434,3598,3646,3542,3482,3621,3706,3569,3472,3572,3542,3550,3539,3426,3415,3589,3585,3500,3465,3565,3566,3602,3383,3511,3527,3596,3521,3576,3554,3553,3513,3565,3627,3525,3708,3525,3583,3627,3559,3481,3443,3559,3599,3429,3601,3607,3538,3511,3521,3608,3513,3504,3470,3543,3479,3501,3430,3407,3586,3461,3531,3406,3605,3562,3545,3534,3493,3555,3482,3530,3506,3454,3444,3511,3505,3598,3514,3577,3411,3429,3532,3495,3417,3454,3417,3425,3516,3476,3525,3416,3439,3485,3495,3487,3560,3483,3471,3509,3419,3471,3615,3428,3553,3473,3532,3415,3453,3366,3414,3522,3386,3495,3497,3399,3497,3466,3486,3349,3462,3353,3359,3497,3414,3396,3416,3431,3494,3515,3534,3396,3340,3327,3375,3403,3433,3452,3514,3395,3400,3321,3384,3403,3328,3336,3394,3383,3403,3442,3320,3425,3471,3415,3398,3517,3392,3466,3443,3403,3488,3331,3326,3218,3434,3368,3420,3387,3327,3279,3259,3319,3387,3386,3440,3371,3428,3458,3340,3296,3349,3260,3436,3339,3360,3333,3398,3389,3294,3372,3325,3240,3267,3246,3387,3376,3255,3336,3355,3395,3282,3302,3356,3248,3321,3357,3299,3305,3338,3261,3279,3317,3351,3274,3127,3310,3253,3156,3284,3280,3281,3245,3234,3278,3323,3384,3297,3272,3180,3261,3304,3268,3191,3206,3350,3290,3294,3186,3300,3239,3218,3259,3168,3240,3239,3244,3207,3204,3144,3154,3210,3178,3274,3284,3264,3227,3193,3255,3203,3160,3193,3202,3235,3285,3248,3207,3183,3245,3209,3193,3166,3271,3216,3183,3142,3139,3247,3210,3152,3211,3083,3133,3180,3241,3203,3147,3115,3217,3237,3152,3201,3173,3107,3290,3216,3180,3069,3124,3151,3063,3092,3223,3173,3259,3214,3080,3114,3159,3192,3126,3018,3159,3156,3123,3096,3111,3116,3181,3109,3184,3112,3064,3173,3057,3102,3013,3093,3074,3159,3061,3163,3124,3130,3067,3046,3126,3044,3155,3112,3071,3159,3041,3053,3072,3042,3000,3027,3060,3075,3095,2985,3072,3103,2997,3057,3025,3049,3082,3037,3034,3209,3059,3006,3038,3082,3025,3036,3080,3082,3066,3103,3074,3052,2988,2999,3126,3139,2996,3042,3021,2993,2974,3108,3037,3011,2995,2979,2930,3000,2954,3036,2965,3063,3034,2941,3046,2912,3006,3077,2985,2939,2881,2963,2960,2965,2970,3013,3012,2978,2973,3049,2953,2963,2975,3071,2975,2966,2928,2924,2891,2977,2929,2950,3018,2818,2901,2939,2991,3036,2918,2943,2951,3000,2893,3001,2891,2945,2781,2949,2913,3002,2817,2866,2792,2870,2936,2850,2875,2975,2842,2841,2870,2929,2732,2863,2822,2931,2894,2784,2875,2942,2860,2834,2744,2894,2839,2814,2791,2859,2848,2851,2840,2876,2875,2766,2738,2868,2853,2825,2839,2870,2876,2803,2815,2877,2750,2816,2807,2835,2917,2805,2784,2759,2810,2694,2945,2896,2866,2822,2753,2791,2725,2687,2843,2869,2781,2886,2810,2745,2818,2755,2828,2754,2686,2714,2860,2791,2872,2798,2703,2784,2807,2809,2756,2821,2767,2789,2664,2692,2779,2744,2710,2744,2664,2791,2707,2755,2751,2719,2683,2780,2705,2633,2684,2776,2653,2739,2703,2646,2691,2760,2665,2696,2750,2628,2704,2623,2593,2752,2705,2751,2626,2721,2610,2696,2588,2630,2633,2696,2580,2680,2736,2648,2723,2696,2725,2550,2627,2701,2668,2718,2658,2628,2662,2629,2622,2648,2655,2646,2601,2655,2638,2608,2682,2640,2767,2604,2657,2631,2620,2668,2587,2777,2658,2653,2626,2569,2610,2652,2603,2695,2465,2631,2724,2503,2638,2614,2616,2626,2511,2569,2683,2548,2615,2664,2528,2565,2567,2622,2563,2530,2555,2616,2528,2599,2597,2576,2494,2531,2581,2510,2617,2532,2524,2517,2457,2493,2483,2474,2516,2503,2533,2562,2471,2506,2591,2506,2502,2562,2531,2569,2493,2482,2617,2500,2498,2507,2505,2496,2486,2511,2428,2501,2593,2460,2500,2554,2512,2537,2385,2525,2512,2409,2539,2445,2466,2467,2446,2512,2526,2514,2532,2460,2349,2462,2463,2475,2593,2479,2438,2463,2451,2477,2449,2506,2408,2440,2515,2387,2480,2426,2446,2359,2442,2461,2387,2401,2382,2430,2503,2410,2419,2406,2389,2367,2374,2496,2399,2390,2378,2463,2397,2409,2328,2449,2347,2541,2368,2336,2355,2412,2384,2400,2396,2325,2362,2367,2422,2413,2354,2352,2435,2334,2345,2434,2377,2339,2396,2320,2284,2310,2368,2303,2345,2324,2359,2253,2349,2371,2446,2362,2283,2295,2344,2365,2319,2293,2288,2199,2293,2406,2283,2321,2318,2224,2314,2337,2339,2275,2291,2272,2197,2317,2231,2269,2313,2325,2294,2261,2227,2250,2316,2292,2274,2282,2275,2180,2320,2284,2313,2197,2379,2226,2242,2301,2200,2280,2225,2227,2304,2288,2282,2280,2247,2252,2267,2278,2235,2256,2258,2284,2194,2325,2143,2184,2164,2292,2280,2263,2256,2245,2209,2210,2178,2247,2151,2246,2261,2273,2192,2300,2233,2128,2213,2166,2279,2295,2209,2203,2244,2193,2189,2140,2197,2217,2181,2232,2149,2183,2146,2213,2257,2061,2136,2144,2230,2146,2194,2142,2118,2185,2162,2143,2202,2178,2107,2203,2170,2149,2133,2104,2160,2114,2072,2162,2124,2201,2193,2178,2107,2213,2146,2149,2090,2051,2165,1999,2120,2123,2020,2052,2089,2093,2144,2065,2109,2129,2173,2117,2092,2175,2094,2090,2096,2087,2091,2166,2120,2125,2122,2087,2066,1994,2130,2074,2038,2088,2047,2073,1989,2070,2112,2108,2073,2056,2109,2019,2029,2094,2064,2089,2057,2076,2126,2070,2040,2072,2169,2067,2036,2090,2026,1997,2075,1975,1953,2010,1991,2066,2010,2007,2105,2087,2011,2082,2012,1932,2017,1970,2037,2082,2001,1943,1982,1992,2090,2074,2040,2039,1976,2020,1979,2038,1979,2045,1971,1958,1971,2050,2001,2068,2041,1932,2050,2018,2056,1981,1906,1955,1925,1965,2018,2056,1949,1915,1960,1960,1991,1945,2004,1921,1995,1961,1978,1942,1919,1900,1930,2036,1997,2000,1949,1863,1990,1886,2007,1903,1879,1887,1924,1955,1934,1989,1963,1968,1915,1943,1907,1912,1963,2072,1910,1883,1915,1913,1949,1820,1979,1881,1934,1973,2013,1889,1966,1911,1983,1893,1917,1894,1882,1889,1894,1921,1816,1876,1881,1824,1878,1905,1887,1968,1884,1876,1895,1918,1890,1889,1909,1832,1816,1901,1808,1839,1889,1890,1823,1819,1873,1869,1914,1844,1841,1854,1943,1888,1855,1868,1931,1900,1856,1771,1852,1808,1829,1869,1806,1915,1817,1885,1877,1813,1920,1856,1751,1762,1822,1802,1831,1772,1767,1823,1760,1837,1826,1820,1845,1806,1773,1864,1757,1822,1834,1873,1803,1800,1778,1881,1783,1818,1841,1795,1782,1771,1841,1723,1715,1810,1846,1778,1808,1775,1736,1709,1798,1788,1757,1726,1768,1779,1762,1790,1831,1714,1803,1773,1754,1795,1737,1727,1783,1717,1815,1709,1727,1745,1744,1799,1726,1729,1747,1803,1749,1818,1712,1708,1709,1791,1707,1761,1715,1718,1689,1709,1752,1714,1627,1642,1684,1737,1713,1711,1629,1734,1781,1801,1733,1694,1707,1726,1753,1702,1700,1694,1750,1739,1677,1688,1791,1619,1733,1717,1628,1723,1639,1762,1680,1629,1718,1724,1652,1662,1684,1729,1684,1690,1698,1651,1653,1659,1620,1624,1698,1663,1646,1616,1654,1630,1586,1630,1626,1672,1678,1681,1663,1657,1704,1648,1597,1653,1622,1663,1697,1660,1645,1640,1587,1654,1604,1621,1607,1653,1594,1605,1590,1585,1649,1705,1618,1665,1569,1623,1600,1733,1690,1657,1638,1638,1589,1655,1527,1503,1601,1624,1566,1615,1633,1613,1598,1556,1642,1540,1642,1596,1623,1560,1613,1565,1638,1598,1564,1610,1636,1615,1590,1653,1641,1579,1529,1548,1549,1566,1610,1535,1589,1601,1567,1592,1517,1576,1577,1551,1601,1539,1565,1575,1594,1573,1585,1529,1563,1568,1491,1506,1575,1566,1527,1538,1520,1527,1551,1512,1579,1585,1599,1468,1512,1533,1514,1572,1546,1571,1582,1500,1594,1540,1488,1541,1520,1491,1524,1555,1503,1497,1558,1590,1527,1539,1500,1506,1529,1524,1505,1512,1530,1499,1425,1545,1459,1520,1479,1505,1475,1541,1489,1525,1537,1511,1424,1538,1455,1484,1449,1447,1503,1543,1449,1497,1431,1523,1435,1471,1469,1481,1548,1467,1427,1513,1414,1441,1468,1469,1486,1497,1473,1497,1541,1500,1436,1487,1428,1491,1419,1471,1455,1452,1423,1475,1453,1462,1502,1472,1404,1442,1519,1465,1518,1431,1442,1414,1400,1449,1450,1346,1392,1470,1469,1423,1445,1411,1393,1420,1385,1415,1392,1364,1436,1364,1396,1388,1462,1392,1352,1452,1383,1444,1391,1411,1394,1421,1438,1418,1444,1426,1365,1427,1386,1384,1396,1442,1427,1461,1417,1340,1403,1456,1485,1347,1396,1460,1392,1396,1407,1481,1373,1376,1354,1443,1370,1304,1297,1428,1360,1399,1402,1350,1354,1382,1324,1319,1405,1290,1314,1347,1375,1338,1337,1415,1363,1344,1329,1320,1425,1323,1366,1347,1351,1353,1365,1387,1345,1378,1317,1389,1345,1329,1403,1405,1347,1287,1344,1313,1376,1389,1330,1346,1420,1299,1384,1331,1371,1391,1341,1291,1321,1347,1325,1379,1324,1308,1335,1324,1279,1358,1312,1286,1324,1295,1310,1357,1299,1312,1286,1344,1320,1325,1211,1318,1331,1278,1320,1308,1290,1372,1348,1321,1310,1325,1271,1313,1274,1253,1254,1261,1285,1346,1317,1294,1337,1283,1244,1377,1295,1310,1323,1298,1365,1300,1198,1330,1317,1312,1225,1247,1306,1334,1236,1282,1279,1173,1274,1313,1271,1279,1292,1328,1235,1274,1202,1251,1268,1295,1253,1310,1198,1257,1278,1253,1223,1258,1253,1258,1276,1258,1207,1222,1276,1303,1252,1175,1199,1230,1262,1241,1207,1239,1254,1224,1291,1254,1214,1237,1226,1244,1271,1273,1197,1194,1218,1161,1231,1228,1178,1275,1167,1193,1188,1211,1278,1219,1222,1243,1226,1253,1210,1297,1235,1256,1241,1140,1222,1217,1191,1231,1237,1222,1175,1209,1221,1219,1174,1220,1216,1202,1135,1221,1166,1221,1181,1182,1208,1247,1192,1180,1269,1188,1130,1227,1151,1215,1200,1162,1176,1186,1157,1197,1144,1151,1179,1116,1205,1164,1170,1157,1133,1142,1174,1150,1189,1154,1173,1195,1153,1179,1164,1133,1147,1182,1186,1151,1176,1182,1215,1150,1167,1148,1117,1117,1209,1171,1198,1123,1100,1122,1165,1121,1174,1142,1160,1161,1116,1221,1164,1159,1197,1112,1167,1160,1118,1086,1134,1123,1155,1074,1118,1146,1141,1124,1124,1144,1161,1109,1101,1194,1177,1103,1105,1078,1073,1134,1165,1114,1163,1093,1087,1160,1060,1075,1042,1154,1181,1085,1108,1080,1119,1075,1101,1138,1051,1116,1172,1079,1114,1087,1117,1074,1127,1130,1113,1172,1102,1080,1069,1059,1116,1143,1074,1116,1108,1112,1089,1071,1112,1107,1044,1067,1127,1155,1100,1059,1116,1051,1043,1089,1088,1049,1082,1148,1140,1089,1087,1122,1042,1090,1103,1064,1058,1015,1058,1075,1060,1070,1070,1073,1098,1090,1096,1035,1066,1106,1063,1023,1078,1061,1137,1065,1064,1084,1086,1034,974,1112,1057,1028,1039,1054,1094,1057,1095,1093,1032,1030,1016,1028,1005,1065,1002,1057,1052,1053,1058,1011,1065,1053,1029,1030,1065,1048,1006,1086,1042,1048,1047,1012,1080,1067,1109,994,1040,1040,1053,1050,984,1018,1056,1034,1063,1013,1049,1005,1068,1088,1004,1036,1037,1021,1096,1028,1019,1010,1014,1020,1066,1023,991,1019,994,1031,1034,1018,1037,989,966,1065,943,1067,925,1009,1003,1021,967,1056,1046,1001,991,1048,1024,1050,1008,1031,980,1068,1044,997,956,1004,935,947,989,1023,1016,988,937,1025,1003,983,949,987,967,990,1030,947,931,1013,987,959,986,1006,928,1036,962,983,954,965,977,944,947,997,1006,946,904,968,953,992,992,997,931,963,956,949,1039,978,986,959,882,939,981,948,997,969,920,933,1018,902,961,959,962,980,978,915,981,1012,942,982,958,887,954,986,965,954,956,899,981,959,957,927,880,942,964,953,880,950,909,948,964,945,944,850,932,911,926,964,914,923,870,926,988,931,953,885,913,945,914,986,936,862,926,910,877,905,867,906,891,936,903,973,928,929,977,962,930,874,940,909,975,903,912,924,951,905,889,954,889,908,843,855,905,917,819,880,887,928,877,916,885,906,877,910,893,912,902,877,940,902,946,883,908,905,892,924,907,904,848,890,884,936,909,887,905,900,820,973,900,891,860,863,858,905,832,919,854,909,867,867,961,916,837,898,901,848,922,906,824,847,860,958,887,885,889,837,857,906,890,838,848,876,878,950,882,853,895,878,865,845,812,839,877,850,843,818,883,836,867,835,872,927,829,841,893,854,856,830,877,883,916,823,809,858,842,863,848,862,848,832,841,849,796,849,882,885,821,863,849,807,818,858,853,800,865,860,833,834,794,802,840,819,862,838,819,842,800,801,883,830,861,835,810,833,835,789,769,785,836,875,837,848,835,788,812,835,777,813,830,798,882,800,822,849,807,813,798,799,823,794,826,813,814,838,831,797,867,806,830,794,791,843,819,813,802,792,837,843,817,774,802,808,836,825,758,792,824,811,797,779,798,878,797,827,768,782,769,839,769,802,835,824,786,821,767,818,783,766,808,788,820,832,791,832,810,813,858,867,803,813,804,794,735,793,776,826,781,828,812,756,814,799,788,796,751,839,794,755,771,850,800,743,730,747,707,767,795,736,781,757,763,747,749,784,764,836,725,719,728,740,762,754,781,772,738,783,750,785,802,731,777,734,758,726,759,782,759,770,806,715,740,760,772,769,741,759,731,779,749,793,726,742,771,749,753,732,777,718,761,775,796,781,800,702,765,768,738,727,771,738,730,749,735,777,735,791,728,740,724,702,757,739,719,750,763,686,712,736,748,772,754,717,731,719,695,710,788,746,723,720,737,750,762,746,729,752,691,738,733,750,725,722,707,705,775,738,702,742,667,740,737,729,710,682,749,749,700,718,736,732,703,728,763,718,675,688,702,705,757,746,714,703,729,706,742,723,675,725,760,691,716,703,722,740,691,684,678,660,733,744,726,721,690,693,721,702,663,702,680,700,664,688,703,651,687,713,696,703,681,663,639,672,701,679,677,711,724,699,662,727,712,738,670,680,684,725,698,657,696,706,660,703,710,690,684,635,719,717,649,672,692,692,719,702,637,674,643,656,687,690,650,710,690,668,705,655,681,726,590,733,727,670,648,694,669,669,684,664,658,662,668,662,683,682,648,728,615,672,675,643,654,638,630,721,677,668,692,628,669,692,651,650,664,611,693,627,658,633,693,639,660,640,643,666,702,658,655,682,654,613,663,692,664,635,658,650,678,699,645,704,630,674,660,668,637,683,646,673,665,698,631,674,666,660,650,643,676,664,723,616,641,630,621,650,628,662,638,692,660,680,615,678,629,630,637,654,606,633,644,662,668,619,637,643,620,654,616,687,664,645,666,649,601,632,671,642,576,629,625,586,628,649,658,601,597,649,652,622,619,615,663,613,645,646,632,657,614,680,624,661,632,626,620,674,619,619,644,655,620,626,580,628,579,627,634,611,640,607,632,600,571,608,594,610,658,632,627,573,594,601,622,621,593,609,593,657,649,583,591,627,637,631,615,656,654,613,588,609,645,567,628,571,620,622,604,621,600,613,645,582,626,598,557,585,619,595,634,634,579,573,602,607,632,547,610,612,579,599,599,566,636,565,637,582,629,597,570,610,622,603,574,599,595,571,571,581,586,624,586,613,604,583,612,582,577,601,614,643,628,593,572,580,607,586,613,651,563,612,616,568,585,608,629,547,589,570,568,614,557,545,604,589,617,601,596,545,565,567,569,619,606,610,573,544,605,566,553,546,563,597,557,542,549,532,612,549,579,569,582,570,561,565,555,585,562,600,602,531,615,581,592,520,567,574,555,558,532,576,585,543,527,533,507,609,581,564,549,564,565,543,554,559,596,534,580,570,579,560,556,584,613,602,573,561,534,624,566,571,562,540,566,564,558,561,553,555,554,556,547,546,557,549,566,598,541,562,559,574,499,562,556,523,602,561,530,561,542,581,517,544,546,586,511,559,534,542,568,539,513,539,526,526,567,511,577,527,534,556,532,527,566,529,561,546,525,557,567,586,554,530,523,584,529,602,557,501,528,531,542,521,525,537,536,521,565,533,558,510,573,555,560,493,512,525,505,508,550,498,572,544,563,547,562,510,516,535,529,575,551,513,500,552,558,538,543,531,544,551,487,521,532,535,526,486,505,510,533,505,519,533,496,536,489,542,529,536,515,544,491,524,497,505,504,537,516,500,550,526,501,507,579,509,572,535,557,520,481,557,520,549,516,505,505,533,512,511,518,480,509,513,500,548,503,523,538,506,523,512,512,523,493,472,505,505,528,529,538,539,526,532,551,497,511,518,507,528,454,505,501,563,481,508,508,554,527,515,521,461,487,559,521,525,516,497,491,546,499,516,526,472,533,513,473,534,513,442,511,468,520,524,514,513,459,488,498,527,483,496,477,464,536,501,451,515,509,487,494,490,531,521,493,481,466,506,461,505,491,532,504,504,512,503,508,516,507,458,544,503,486,458,516,498,534,480,499,494,481,527,517,468,480,488,474,467,505,477,485,484,494,477,476,500,550,501,503,484,495,493,513,466,471,455,504,496,458,479,464,470,482,477,458,476,543,484,486,488,502,482,474,473,472,485,505,509,463,453,488,439,453,489,509,475,498,450,464,444,474,487,510,480,481,499,452,498,505,426,442,502,459,468,465,449,462,465,469,502,422,460,463,519,439,481,482,449,438,488,469,491,465,453,450,481,453,482,496,456,482,483,475,480,437,477,425,487,499,479,468,461,475,493,457,494,459,451,410,469,473,474,435,495,449,462,424,479,474,491,434,436,453,472,447,504,457,449,482,466,473,486,503,469,487,470,475,392,453,460,454,455,481,477,490,437,468,439,489,439,443,444,421,462,453,474,448,458,463,424,510,407,454,467,456,422,469,450,451,443,427,444,434,422,423,449,445,440,441,476,446,462,422,460,475,430,468,423,460,459,450,429,451,455,461,457,438,422,460,418,467,443,474,380,416,474,446,447,407,447,478,466,427,437,483,485,400,425,477,441,438,462,415,479,426,442,475,449,452,452,444,435,423,426,461,485,481,409,475,463,408,409,448,411,416,463,451,413,424,430,401,447,480,417,459,422,470,430,424,437,405,435,475,441,456,437,475,403,448,437,405,420,451,416,450,432,453,396,430,420,411,411,471,418,426,420,437,428,418,421,433,427,407,449,385,441,411,449,431,408,461,402,397,441,445,478,404,437,444,433,415,409,399,440,469,424,456,418,421,431,421,415,421,411,417,410,447,423,443,408,460,456,401,413,383,412,415,447,429,429,451,404,456,460,414,395,385,419,405,421,385,418,414,420,418,426,440,366,406,448,416,413,432,422,414,379,434,437,416,414,407,434,448,429,436,446,394,434,435,488,441,407,389,405,438,405,375,436,420,387,409,416,419,394,405,406,387,398,385,424,443,432,427,437,409,411,420,415,403,391,419,442,395,418,418,412,430,416,409,391,400,412,425,404,403,388,401,401,385,399,390,395,441,411,425,426,386,425,398,407,414,378,405,364,396,410,425,426,385,401,394,381,405,421,417,410,392,413,368,386,441,391,398,371,407,425,397,401,416,378,420,406,398,395,397,423,416,403,412,415,413,381,439,412,417,440,405,401,407,412,421,387,395,401,432,413,396,429,399,372,373,391,421,389,411,393,388,403,417,363,391,378,396,398,412,403,432,377,412,398,406,387,399,411,426,401,390,371,365,434,388,394,404,438,422,374,392,385,375,417,395,391,371,416,375,383,360,377,375,406,406,421,413,389,364,410,384,419,398,410,392,396,393,404,386,389,392,387,397,417,385,395,388,337,379,366,405,414,391,426,399,395,379,390,386,381,390,392,368,397,411,391,395,382,369,377,385,408,423,385,378,404,395,394,339,379,360,373,393,363,380,386,425,414,362,373,402,389,383,353,393,388,382,409,413,376,380,385,377,403,391,397,346,384,386,383,418,369,375,375,360,397,370,377,383,389,386,392,379,395,386,418,391,423,433,394,408,367,387,389,418,411,390,395,388,390,375,381,382,399,375,366,377,394,391,394,381,361,377,353,368,376,408,409,359,382,404,344,374,384,356,376,384,394,387,394,335,363,398,422,369,340,371,385,377,373,372,378,352,334,375,380,369,372,366,390,399,423,362,388,369,362,404,396,351,393,367,370,400,403,385,381,408,375,370,372,376,370,352,345,349,386,386,318,400,364,390,380,375,392,365,358,392,384,389,400,388,365,375,403,345,343,407,384,380,373,396,384,361,342,382,362,367,349,355,373,377,365,387,350,340,395,358,379,356,373,378,342,369,370,403,397,367,394,380,344,382,376,395,347,363,429,352,379,422,397,365,372,393,357,339,388,361,389,352,372,399,360,406,410,381,389,363,411,381,357,370,374,362,359,363,370,379,366,377,388,362,393,345,367,416,379,366,381,395,387,375,385,393,358,339,358,415,356,323,370,371,402,400,405,342,393,372,315,377,367,432,375,404,376,362,341,390,334,381,360,324,355,393,366,340,333,376,341,334,389,371,333,331,350,362,370,353,395,399,394,343,375,374,344,377,349,351,355,384,365,377,370,370,377,354,367,369,407,374,332,338,359,380,360,356,393,350,387,362,417,396,344,387,353,341,354,375,342,364,367,373,357,327,346,386,376,372,366,366,314,373,387,359,383,356,354,392,337,352,346,364,324,370,359,402,333,359,373,360,357,349,341,363,355,381,354,364,351,378,347,346,387,376,358,382,378,348,370,367,375,349,396,386,367,369,375,372,361,389,354,376,373,344,370,341,344,368,372,369,384,384,393,405,367,347,364,410,367,342,363,375,344,378,340,380,372,378,373,361,353,358,347,371,369,349,362,353,391,346,347,358,379,383,367,361,385,358,322,378,360,364,369,375,352,386,402,398,359,332,346,372,378,390,324,354,375,367,361,390,367,360,354,362,371,378,337,400,349,363,344,362,325,404,334,340,372,355,383,380,357,392,372,334,356,373,350,336,354,358,307,375,390,369,405,385,348,386,380,378,335,361,352,322,366,357,358,343,383,394,372,349,373,350,304,343,382,356,363,340,369,339,378,358,368,365,378,365,368,328,383,369,375,368,354,354,397,369,369,364,329,348,388,329,350,345,383,361,338,367,356,356,364,360,348,374,343,377,369,373,351,375,361,369,359,386,358,363,356,379,361,324,349,372,347,378,371,369,340,362,355,358,363,380,362,334,351,305,368,348,379,343,329,368,338,350,353,383,348,348,343,364,345,350,365,365,350,318,351,354,354,325,356,339,341,361,392,390,349,343,357,386,368,382,351,371,362,352,346,373,373,390,362,346,352,369,391,385,383,356,340,355,364,348,346,377,371,366,353,354,368,375,337,391,355,367,368,342,348,358,346,384,372,346,346,359,357,356,342,362,374,362,362,387,366,350,388,336,369,369,344,389,340,378,386,364,335,377,380,327,404,389,369,373,327,380,332,360,357,376,366,337,352,371,364,372,382,351,342,386,354,349,314,349,359,371,384,376,354,365,367,368,362,386,386,406,362,386,364,394,372,347,384,323,384,346,337,333,360,355,384,353,370,395,343,405,387,353,367,364,356,357,397,367,367,384,359,372,405,354,346,383,350,361,382,380,327,388,335,350,371,382,364,354,393,363,371,378,347,381,354,399,353,402,393,425,366,392,351,367,356,376,393,338,379,342,398,364,412,387,366,343,394,340,340,375,400,407,381,364,394,338,365,373,365,379,382,370,371,352,413,342,375,384,382,386,348,362,369,381,383,374,388,354,405,378,381,382,361,378,377,374,362,392,364,422,408,363,390,384,351,403,420,384,337,390,382,374,385,350,367,370,377,403,357,371,395,394,397,358,411,372,377,382,354,360,402,354,393,381,369,397,349,370,359,365,381,399,406,408,362,403,402,392,373,359,372,437,374,388,352,383,349,355,369,382,385,368,368,371,398,365,375,403,362,394,343,373,365,376,391,354,366,381,374,384,364,368,370,336,376,386,367,381,399,373,411,364,393,405,370,372,390,364,388,379,372,394,404,393,380,365,370,371,347,393,373,384,383,382,362,388,378,392,356,402,396,403,374,376,364,380,404,394,415,360,405,398,376,417,410,404,398,401,378,403,388,350,374,414,393,366,398,377,392,407,421,407,401,391,385,387,408,362,368,367,402,401,394,380,432,412,365,395,383,421,384,410,345,392,404,432,419,381,383,391,420,407,372,407,398,411,388,399,410,424,402,364,382,414,421,399,411,428,398,424,387,414,436,389,403,387,415,378,409,416,395,389,428,438,381,416,415,402,386,389,366,393,367,406,386,408,388,382,441,427,394,409,379,391,411,426,377,412,416,400,421,410,438,395,394,425,414,427,405,439,448,412,397,428,413,394,396,420,390,420,386,398,442,389,396,424,383,406,431,441,430,413,402,433,390,410,405,414,397,369,412,452,414,428,427,421,409,384,394,439,397,427,437,426,428,426,422,444,411,423,398,394,384,375,413,410,417,447,416,475,422,451,397,410,391,429,413,413,418,406,425,423,434,455,405,436,459,399,410,442,423,439,424,461,431,436,408,439,385,431,433,398,415,447,406,442,401,411,456,387,417,384,414,409,404,428,423,430,467,408,449,399,453,437,473,422,414,454,446,450,432,446,412,436,428,422,418,431,416,451,417,436,403,472,435,422,457,449,437,463,454,435,423,424,411,469,410,419,473,445,436,441,479,428,466,446,446,468,465,436,460,429,449,447,467,424,441,473,474,445,456,417,468,437,442,442,480,476,445,461,434,473,415,464,465,487,429,462,457,409,446,436,438,438,461,455,468,435,519,429,467,462,471,487,481,443,468,428,424,450,431,460,472,485,460,456,426,487,447,467,488,464,446,450,453,463,494,448,461,456,453,476,468,476,448,470,507,506,502,430,493,449,482,482,466,466,496,480,436,511,500,440,454,519,488,497,477,517,502,485,476,453,481,448,547,531,460,447,441,464,481,476,478,501,467,464,438,511,492,462,468,461,469,527,478,448,481,498,486,514,543,479,458,452,517,453,471,450,498,515,493,515,509,510,488,503,536,504,502,557,470,536,502,521,495,492,490,537,475,523,526,486,506,551,499,532,540,517,443,526,513,538,543,554,492,495,493,483,534,531,505,484,496,536,515,538,578,479,528,497,579,496,542,550,555,494,498,527,525,497,559,521,504,485,546,549,540,520,529,540,517,525,532,537,567,551,508,528,571,565,525,563,554,545,548,538,539,514,514,531,602,579,575,512,551,550,526,514,564,561,542,570,536,536,509,556,599,574,511,533,584,550,526,524,532,538,532,533,565,603,504,584,559,533,577,543,540,564,555,503,536,591,578,582,535,578,545,561,570,539,569,582,541,618,551,592,568,589,537,552,586,596,585,582,552,587,610,582,587,608,567,564,595,592,554,560,614,594,585,608,585,610,609,589,617,590,565,583,591,588,558,576,564,585,593,614,592,599,582,607,645,642,630,632,635,637,577,632,593,584,634,614,651,597,646,621,617,586,633,612,656,609,609,608,624,629,636,606,579,632,656,613,596,603,603,630,633,649,628,661,649,624,610,637,652,614,636,630,632,641,668,685,649,673,568,677,663,618,638,669,636,658,621,662,633,680,619,676,635,705,685,673,677,688,659,637,709,647,693,695,646,664,700,650,693,618,660,692,648,676,642,709,724,652,663,685,723,718,699,718,691,728,711,686,646,732,716,670,680,715,696,700,717,657,703,696,696,683,624,706,711,703,711,669,730,693,733,689,694,751,754,732,748,673,713,706,712,735,743,677,703,769,713,766,734,729,703,767,767,744,719,768,750,749,824,773,715,763,816,790,752,738,769,777,795,755,773,765,778,797,727,772,792,750,782,820,745,802,795,826,784,814,813,781,800,808,817,766,812,864,759,821,793,814,809,830,744,814,809,781,759,829,851,862,824,808,837,874,830,808,860,831,871,806,770,828,826,822,809,828,812,815,867,835,893,863,775,793,848,888,908,848,849,906,830,812,813,873,806,863,865,834,853,849,872,929,919,901,920,866,879,859,893,928,875,924,919,900,936,903,946,870,849,946,920,930,860,935,902,913,921,903,979,890,913,903,912,954,960,949,939,919,960,924,971,955,931,913,945,998,976,983,972,965,966,915,1046,1016,1016,974,994,980,987,1006,986,995,1023,975,1007,1008,1018,1005,1004,954,1031,1038,1004,1056,1059,1012,1017,1023,1046,1089,984,994,1014,1029,1034,1064,1035,1079,1007,1064,1072,1092,1078,1020,1077,1040,1100,1102,1119,1142,1068,1134,1121,1061,1072,1140,1040,1120,1111,1150,1100,1037,1068,1066,1130,1162,1185,1122,1167,1179,1133,1090,1079,1179,1157,1174,1154,1155,1190,1153,1180,1201,1190,1199,1164,1244,1187,1187,1201,1125,1173,1201,1160,1220,1154,1221,1250,1230,1159,1227,1270,1201,1270,1244,1195,1210,1285,1271,1212,1248,1274,1317,1282,1180,1233,1300,1309,1304,1350,1264,1337,1331,1259,1326,1246,1393,1317,1401,1330,1305,1277,1365,1396,1350,1358,1344,1311,1279,1338,1407,1353,1342,1377,1436,1421,1385,1489,1416,1457,1389,1342,1379,1462,1441,1418,1410,1432,1483,1414,1395,1497,1397,1418,1529,1471,1449,1472,1489,1498,1441,1513,1495,1444,1491,1532,1488,1493,1525,1495,1541,1513,1606,1560,1618,1578,1485,1508,1547,1628,1587,1560,1653,1507,1558,1624,1679,1632,1583,1707,1640,1647,1723,1633,1672,1659,1617,1708,1656,1655,1668,1701,1729,1665,1653,1760,1754,1685,1737,1751,1723,1708,1718,1794,1777,1787,1888,1855,1770,1812,1814,1807,1855,1777,1798,1868,1915,1788,1854,1857,1890,1802,1842,1854,1846,1863,1935,1928,1857,1944,1962,1907,1914,1928,1896,1958,2041,1972,1976,2036,2002,1966,2013,1934,2003,2100,2031,2060,1975,2047,2047,2122,2103,2109,2051,2127,2132,2129,2065,2086,2034,2152,2127,2179,2204,2151,2163,2083,2219,2303,2093,2249,2224,2302,2239,2293,2346,2321,2290,2340,2391,2199,2277,2340,2409,2276,2368,2322,2428,2416,2409,2415,2452,2494,2454,2411,2480,2450,2431,2416,2467,2400,2533,2493,2520,2502,2565,2516,2566,2635,2618,2673,2601,2552,2571,2640,2703,2586,2668,2660,2678,2701,2712,2816,2748,2753,2826,2767,2855,2710,2741,2908,2908,2767,2846,2902,2829,2924,2815,2981,2837,2919,2941,3027,3023,2934,3166,2958,3054,3057,3055,3126,3098,3184,3168,3019,3091,3120,3260,3135,3216,3262,3186,3241,3101,3147,3242,3202,3226,3286,3301,3296,3315,3349,3382,3398,3469,3434,3374,3374,3495,3553,3484,3443,3416,3475,3625,3485,3520,3661,3530,3644,3538,3566,3612,3707,3702,3665,3832,3683,3783,3829,3831,3798,3808,3799,3768,3875,3827,3856,3872,3915,3967,3778,3978,3959,3941,4102,3962,4074,4081,4045,4145,4113,4075,4115,4265,4249,4137,4297,4204,4261,4234,4209,4357,4350,4293,4347,4371,4320,4413,4399,4387,4527,4583,4503,4457,4486,4543,4506,4782,4712,4631,4676,4705,4696,4629,4605,4736,4748,4877,4736,4794,4960,4751,4942,4951,4994,5030,5011,5134,4980,5073,5062,5099,5075,5241,5105,5245,5159,5191,5143,5135,5248,5259,5221,5336,5324,5403,5329,5267,5464,5451,5417,5551,5488,5492,5670,5508,5615,5635,5643,5642,5635,5630,5644,5555,5784,5925,5799,5889,5875,5828,5987,5993,6072,5853,5883,5958,6008,6108,6100,6033,6082,6101,6088,6207,6060,6257,6233,6078,6259,6188,6210,6165,6424,6402,6472,6398,6434,6259,6462,6296,6527,6447,6502,6722,6698,6549,6598,6564,6587,6594,6721,6661,6576,6818,6783,6705,6712,6912,6807,6913,6852,6801,6821,6921,6958,6895,6980,6917,7052,7038,6934,6962,7046,7235,7011,7123,7163,7191,7194,7175,7220,7281,7208,7142,7339,6990,7233,7161,7325,7333,7184,7178,7249,7378,7370,7246,7210,7433,7451,7313,7378,7510,7321,7414,7570,7623,7441,7655,7563,7549,7593,7533,7522,7508,7560,7600,7613,7649,7526,7603,7646,7547,7638,7691,7513,7824,7625,7617,7604,7579,7547,7582,7666,7763,7720,7553,7848,7583,7784,7666,7609,7642,7589,7775,7877,7745,7602,7650,7650,7672,7743,7808,7761,7802,7799,7731,7706,7648,7783,7633,7765,7760,7705,7813,7774,7682,7767,7741,7620,7754,7605,7890,7796,7613,7594,7726,7716,7768,7740,7561,7583,7797,7598,7652,7599,7604,7519,7539,7504,7672,7543,7570,7621,7575,7727,7527,7606,7569,7546,7633,7444,7549,7554,7384,7411,7489,7476,7250,7527,7334,7338,7325,7303,7229,7015,7297,7175,7350,7336,7180,7104,7060,7245,7198,7114,7129,7230,7122,7043,7117,7025,7014,7190,6896,7094,6952,7072,6867,6854,6876,6751,6843,6889,6851,6753,6795,6808,6715,6923,6741,6800,6558,6567,6701,6552,6644,6591,6654,6653,6549,6456,6497,6408,6574,6419,6469,6410,6237,6322,6398,6259,6323,6204,6338,6289,6177,6107,6012,6156,6083,5986,6099,6108,6100,6000,5875,5990,5908,5822,6105,5834,5884,5822,5807,5734,5665,5870,5706,5731,5596,5654,5510,5501,5607,5551,5439,5572,5595,5530,5553,5458,5550,5389,5380,5391,5455,5279,5240,5284,5185,5282,5249,5263,5065,5087,5006,5153,4892,5138,5169,5039,4935,4973,4934,4893,4895,4893,4784,4907,4761,4904,4726,4796,4696,4732,4672,4594,4644,4667,4574,4515,4546,4544,4571,4562,4523,4435,4361,4424,4333,4374,4217,4405,4274,4253,4159,4235,4173,4246,4062,4061,4224,4130,4023,4047,4047,4022,4157,3982,4014,4020,4025,3958,3934,3813,3874,3883,3827,3744,3739,3725,3747,3734,3721,3635,3588,3759,3683,3702,3641,3593,3478,3526,3551,3526,3550,3543,3423,3463,3504,3390,3347,3338,3378,3323,3361,3338,3338,3252,3274,3158,3297,3166,3191,3180,3090,3194,3209,3086,3183,3077,3090,2964,3073,3028,2969,3030,2877,3076,2858,2893,2947,2917,2845,2858,2882,2842,2837,2853,2807,2854,2763,2841,2778,2769,2710,2678,2701,2704,2600,2625,2637,2562,2656,2584,2574,2606,2567,2553,2549,2566,2564,2484,2448,2544,2459,2495,2424,2427,2390,2408,2436,2388,2399,2400,2347,2279,2296,2259,2381,2251,2266,2190,2221,2323,2220,2169,2088,2270,2156,2233,2203,2253,2190,2133,2094,2196,2142,2074,2089,2108,2068,2107,2080,2012,2034,1956,2043,1927,1986,1988,1914,1955,1886,1974,1925,1969,1850,1927,1933,1899,1916,1818,1847,1860,1854,1776,1803,1811,1853,1859,1802,1753,1728,1765,1695,1760,1664,1746,1686,1739,1706,1738,1679,1754,1588,1737,1677,1585,1676,1567,1634,1559,1562,1618,1601,1578,1619,1554,1589,1517,1572,1519,1548,1507,1538,1517,1517,1546,1441,1502,1517,1451,1487,1457,1504,1424,1449,1431,1485,1396,1400,1374,1407,1381,1363,1390,1385,1347,1360,1380,1376,1333,1331,1275,1394,1243,1326,1266,1274,1338,1257,1318,1256,1278,1267,1272,1185,1301,1204,1257,1228,1217,1200,1207,1233,1136,1158,1139,1189,1187,1150,1175,1182,1176,1143,1121,1201,1219,1104,1126,1186,1168,1134,1153,1144,1097,1143,1079,1103,1118,1049,1075,1108,1125,1051,1110,1032,1041,1060,1063,993,1005,1035,1047,1032,1060,966,1017,1049,1064,986,947,957,984,1048,992,991,1015,957,963,959,982,981,982,977,958,928,873,925,902,928,913,928,936,910,908,951,907,904,909,908,900,883,875,914,915,867,852,868,895,884,849,847,878,895,846,848,840,794,783,826,801,845,789,831,814,784,838,845,789,817,826,773,792,790,798,802,771,784,755,763,748,772,794,793,745,728,773,737,748,741,757,719,725,743,688,700,688,765,751,717,741,746,675,672,714,727,733,749,720,678,693,659,690,663,698,681,680,740,685,692,649,708,640,690,727,642,636,670,650,657,669,637,614,637,648,620,628,690,655,611,640,627,598,603,617,637,631,620,605,637,624,644,594,630,621,617,627,649,572,591,609,608,611,597,573,582,549,575,599,599,558,581,559,576,587,592,563,582,561,608,552,559,587,581,590,531,562,586,551,564,550,577,538,560,594,557,529,560,479,552,524,521,535,541,524,504,503,530,500,499,560,498,493,513,480,504,486,510,551,471,517,515,484,475,431,492,493,490,492,470,507,468,510,482,476,477,467,468,507,481,471,458,470,488,465,496,489,428,466,477,488,460,451,442,471,449,424,481,440,435,467,443,442,435,460,475,424,438,458,455,407,471,443,428,418,420,454,432,453,412,416,443,441,421,427,421,414,434,437,411,387,424,434,442,417,439,440,440,420,412,387,426,401,393,420,369,378,409,400,434,373,386,391,395,425,407,390,374,385,352,379,345,371,415,364,400,392,384,387,382,400,375,392,359,401,378,352,372,358,390,373,355,320,377,366,348,376,382,391,358,358,392,353,354,368,365,354,350,377,357,336,322,364,365,355,344,336,381,334,381,335,369,370,350,328,347,352,322,318,330,326,326,324,379,324,304,332,341,302,341,358,336,344,298,320,326,344,321,321,310,319,304,341,335,327,300,303,321,345,349,333,316,298,309,318,283,323,288,299,334,307,313,334,279,319,294,292,289,296,296,314,309,302,341,294,279,277,310,276,274,292,298,355,354,283,319,278,296,304,288,307,339,280,312,278,290,300,279,302,304,292,255,282,289,272,272,297,251,306,273,261,281,286,288,285,264,306,285,302,289,284,264,283,238,261,262,249,279,267,272,258,236,261,261,288,277,277,250,276,271,236,252,249,263,242,263,297,245,254,273,240,250,235,284,258,270,281,253,286,273,269,252,251,264,265,265,244,253,289,257,245,269,242,249,241,252,237,249,233,255,261,253,226,256,252,245,228,258,258,240,261,252,267,254,235,239,239,255,235,282,246,219,268,245,236,239,231,214,232,218,238,243,239,263,229,246,213,231,267,237,235,235,215,248,212,216,258,216,228,226,189,215,239,208,226,229,230,203,216,237,198,251,220,232,232,216,225,218,232,201,228,219,228,227,190,208,226,195,223,205,227,193,232,191,213,231,199,201,216,226,219,203,231,204,223,209,218,187,219,203,185,228,215,213,223,204,206,210,208,210,181,223,196,212,198,204,218,196,207,168,227,219,192,191,204,217,179,200,190,191,210,198,163,220,207,193,174,180,183,187,223,212,196,187,198,189,188,205,185,157,197,178,219,198,171,179,199,207,173,188,197,194,193,178,196,198,174,196,188,204,180,191,188,211,179,181,187,160,180,195,164,194,188,185,190,188,192,201,198,185,208,191,181,179,189,174,167,166,166,148,170,181,167,159,176,179,192,167,186,192,193,163,164,183,138,191,185,172,154,191,177,185,181,163,162,147,177,206,176,179,168,186,185,180,174,157,139,169,165,165,186,183,168,156,157,161,150,182,164,171,176,168,129,172,161,167,204,151,185,149,168,157,192,155,162,146,170,157,189,137,173,175,157,168,156,184,171,159,143,172,190,152,172,176,148,167,164,159,136,162,168,169,162,162,148,160,147,166,160,147,153,164,151,162,168,165,139,158,163,147,154,162,161,156,150,164,156,159,151,146,148,164,146,167,148,158,147,143,145,139,132,147,149,169,141,148,161,139,172,157,169,152,167,141,145,162,155,130,165,133,147,137,144,135,156,130,156,149,154,136,148,180,158,145,159,132,138,134,142,162,167,136,153,143,127,140,143,136,142,143,128,150,148,145,151,140,145,124,127,157,158,147,165,143,136,146,141,161,125,133,144,116,139,122,125,155,133,135,105,120,129,137,156,137,145,158,133,139,132,144,143,115,131,123,146,134,130,127,146,129,141,134,111,156,152,147,123,160,122,130,136,142,135,129,138,123,127,139,130,116,146,127,132,141,134,122,139,137,135,148,133,141,149,134,149,134,115,130,137,129,123,140,121,119,114,143,136,115,140,135,112,116,109,127,136,144,141,122,139,122,118,134,135,130,116,137,138,98,113,103,129,129,109,119,113,121,110,116,129,121,128,132,110,104,111,127,123,133,122,112,131,111,110,128,127,125,128,105,130,108,120,110,122,114,100,110,119,114,128,124,106,118,123,105,122,121,113,110,107,115,113,134,110,111,107,116,121,110,121,115,97,104,117,106,137,134,120,97,107,128,108,101,114,111,103,118,103,125,109,104,106,123,118,89,115,96,124,120,105,120,109,118,124,117,102,102,110,116,115,101,95,117,112,99,104,109,109,95,100,110,110,115,106,92,108,101,123,124,98,117,117,102,95,109,118,103,103,104,95,132,98,116,122,113,111,98,103,92,105,104,95,97,108,106,108,107,103,110,99,91,125,98,117,111,104,107,119,107,101,102,98,111,108,92,123,108,115,100,88,116,96,92,86,94,93,110,109,98,94,117,86,89,117,89,110,92,99,116,87,86,103,98,108,111,106,125,101,104,98,104,95,107,98,96,94,103,119,91,120,79,101,122,94,98,101,95,96,98,89,113,102,86,100,110,106,90,99,84,82,100,120,103,95,92,90,91,90,96,102,98,99,96,96,101,103,94,104,80,118,89,100,97,93,81,80,91,88,78,93,91,91,92,95,102,77,92,95,82,106,94,109,98,72,102,102,73,87,74,104,91,92,84,79,93,116,89,90,124,89,101,102,87,93,105,95,76,87,113,91,90,76,106,95,86,96,74,90,91,79,70,88,95,91,64,93,90,93,69,100,76,87,78,67,83,84,90,96,120,86,122,84,108,89,91,95,97,82,85,84,76,108,76,64,88,94,76,86,87,86,101,90,84,107,91,109,82,97,97,89,78,80,82,91,75,90,77,69,85,105,77,83,78,95,108,68,99,78,77,86,81,76,94,72,86,87,79,98,90,89,98,85,67,75,103,78,90,79,81,88,74,71,95,80,79,92,77,87,80,78,86,79,68,91,92,77,99,83,84,88,86,91,78,71,78,71,77,75,80,89,72,79,88,93,88,82,62,81,67,75,88,73,78,51,71,63,86,69,90,79,90,73,92,69,90,77,72,90,78,68,84,76,77,88,85,86,70,78,81,78,75,74,74,78,80,92,77,72,71,81,89,72,79,63,73,82,76,80,82,87,70,70,78,83,76,79,76,91,84,77,90,80,69,93,73,70,81,94,73,82,85,83,76,67,72,63,81,71,84,89,77,79,67,83,77,77,68,69,76,77,84,77,73,74,97,78,55,63,76,89,76,85,94,70,74,81,77,67,77,76,76,82,85,77,68,72,68,79,90,76,78,66,73,77,75,80,73,72,75,67,77,72,83,67,66,79,68,80,76,83,65,76,78,69,71,61,82,79,67,65,75,71,71,78,57,72,83,63,63,84,78,63,80,62,63,64,77,75,76,86,87,80,76,83,79,76,72,60,60,81,71,70,66,72,59,70,63,59,72,75,71,66,76,85,69,60,70,69,89,69,74,67,76,80,71,56,70,74,66,77,70,75,83,65,77,73,61,54,72,71,59,67,68,71,68,68,70,79,75,77,69,58,78,52,62,85,69,65,77,66,59,72,63,80,65,78,67,68,65,54,65,82,52,57,68,61,61,85,59,63,65,48,62,58,48,66,51,81,69,69,59,74,69,55,69,59,66,62,69,70,73,73,62,77,55,83,65,63,69,56,72,70,70,64,68,69,68,79,48,71,65,62,59,68,71,59,73,73,59,77,48,57,76,72,72,63,60,66,65,61,63,76,69,62,63,64,51,61,51,72,64,51,68,71,50,55,62,57,67,89,56,61,73,65,66,59,57,59,49,63,56,62,60,66,58,65,57,61,53,72,63,68,69,50,53,63,58,63,57,64,59,55,52,73,81,51,60,55,60,57,72,72,67,49,59,49,53,65,76,63,54,63,67,42,69,52,59,64,64,53,57,74,54,60,63,65,58,73,66,48,59,60,74,62,72,57,71,57,63,55,58,49,49,51,73,53,67,57,72,58,57,53,62,61,71,63,51,65,51,66,60,61,56,63,72,54,60,58,61,62,46,53,54,70,57,41,58,63,60,66,61,65,69,61,62,62,51,64,57,65,52,77,49,66,52,59,54,56,60,73,59,58,54,68,60,55,54,51,68,46,61,55,61,66,55,61,53,69,67,44,53,45,72,60,53,54,54,49,57,47,51,56,55,61,64,47,55,62,52,43,51,51,58,56,50,59,56,48,54,56,59,51,58,56,55,68,54,45,67,47,53,60,62,66,70,59,54,52,60,61,66,49,51,53,47,57,65,52,59,55,62,59,49,52,64,49,60,58,61,51,53,47,48,52,49,49,65,54,63,41,56,55,57,51,53,51,44,73,53,50,53,55,52,67,57,43,50,53,46,50,51,63,51,39,59,62,52,45,64,61,52,48,52,53,62,46,50,51,57,52,52,54,53,58,44,44,44,73,50,58,50,57,50,58,38,55,63,45,61,54,50,43,55,61,70,49,61,41,51,41,57,61,55,57,72,51,50,61,47,40,45,50,41,49,50,47,51,42,50,70,51,52,59,42,50,52,62,47,51,58,54,55,48,57,49,47,45,60,42,36,51,52,53,48,58,51,48,51,50,57,49,43,48,57,47,49,60,45,51,58,39,58,59,54,39,41,50,51,44,52,46,52,61,53,51,42,52,56,49,52,43,53,47,48,59,52,63,61,55,44,29,49,50,56,47,44,43,47,46,73,34,45,43,41,43,49,46,50,52,36,51,43,52,50,50,47,55,36,54,52,41,57,42,49,56,52,57,50,54,40,50,54,51,48,51,60,44,41,62,51,42,47,47,44,47,42,52,40,52,57,39,61,50,44,42,40,51,48,50,53,50,45,56,42,41,45,46,50,51,41,43,34,55,44,35,58,34,43,54,43,42,38,41,45,53,43,57,40,47,50,45,36,55,39,57,46,58,43,54,45,47,36,42,35,50,47,53,45,43,39,44,41,59,42,56,37,43,34,41,44,34,55,51,53,43,52,44,38,41,44,45,42,32,49,44,38,39,45,30,51,41,43,44,46,38,46,50,54,39,39,46,53,42,39,43,47,43,33,44,45,48,62,45,39,39,36,42,49,49,39,42,49,26,41,38,41,38,44,40,43,37,49,40,38,47,39,50,37,37,39,37,43,42,43,50,35,35,38,45,33,38,60,27,45,46,42,41,51,43,44,43,54,47,29,49,47,32,52,35,35,40,44,44,43,46,42,45,52,36,49,52,44,37,34,54,37,45,42,37,49,39,38,36,41,37,40,39,35,40,48,28,38,39,43,37,27,39,47,38,39,36,64,39,28,34,39,35,45,46,39,42,38,41,38,45,41,47,42,59,43,45,32,38,43,43,48,45,41,49,35,29,41,36,34,49,45,47,46,42,42,49,36,55,36,38,48,36,49,39,48,47,41,41,36,39,34,39,35,42,40,36,31,37,58,47,36,40,33,30,25,40,41,42,39,35,47,38,46,41,41,41,29,42,48,45,40,33,44,38,49,39,42,40,41,26,43,39,48,44,39,39,48,39,39,39,39,43,23,41,44,39,37,42,38,36,41,52,33,53,47,32,50,34,40,28,56,19,37,43,41,42,48,39,38,31,39,49,36,47,37,43,34,30,41,32,49,34,45,47,23,40,33,48,34,40,44,36,33,44,47,33,43,36,45,40,42,29,43,43,36,30,40,40,29,42,42,40,38,41,40,49,33,45,53,41,32,37,32,42,48,35,35,37,27,51,43,35,36,41,51,40,44,43,42,42,47,44,42,48,33,39,28,42,41,45,25,45,38,34,36,29,35,39,41,41,40,26,34,43,30,33,38,38,39,36,31,32,33,35,29,45,45,38,36,47,40,32,36,30,40,48,47,33,32,24,43,22,36,46,40,39,48,26,35,26,27,48,39,37,32,35,34,32,47,39,41,50,38,29,33,38,31,32,29,32,32,22,31,33,24,28,43,39,28,35,29,42,34,35,40,31,34,35,38,34,36,41,40,28,36,33,35,47,34,35,21,42,33,30,34,38,29,38,40,29,41,34,30,30,29,51,44,42,33,40,43,33,32,39,37,29,36,36,32,27,38,34,32,23,28,41,31,32,37,30,41,28,34,41,33,26,29,33,35,35,39,27,29,64,35,37,34,41,40,39,36,40,32,35,32,27,36,31,36,40,27,34,31,38,40,30,27,37,38,29,24,32,42,42,26,26,34,36,36,38,29,36,39,39,26,26,35,23,40,28,27,29,35,26,31,41,31,29,41,28,41,28,38,35,25,26,32,33,27,39,29,33,31,33,38,30,31,42,42,39,34,32,23,42,29,33,35,30,36,31,37,30,27,42,30,33,28,30,33,30,36,30,29,27,32,40,41,40,25,40,43,32,34,35,31,34,35,39,22,38,38,24,34,42,38,30,41,31,36,22,36,26,35,25,33,40,36,35,40,42,34,21,35,34,42,30,24,34,39,34,33,36,26,40,35,30,37,26,37,29,44,30,39,29,31,30,38,33,32,29,31,31,37,31,26,30,39,31,30,29,31,32,38,29,27,30,29,34,21,27,35,35,33,30,22,40,34,26,33,32,35,21,32,28,39,33,36,32,31,36,34,30,33,30,32,28,32,26,33,32,26,30,20,38,26,36,35,24,20,24,33,35,35,24,40,25,41,27,17,26,24,40,39,32,40,36,33,27,34,36,39,32,38,28,35,28,18,27,22,34,38,34,26,29,36,36,21,30,27,36,24,32,35,39,45,26,30,28,30,25,39,32,32,29,41,30,29,30,28,24,22,33,25,34,34,32,19,36,27,22,27,32,31,36,26,34,22,27,35,31,27,26,38,40,26,33,32,32,32,17,33,32,26,20,26,22,41,33,30,29,28,37,26,27,29,36,35,24,44,30,37,28,34,31,34,27,24,28,33,33,26,31,25,39,34,25,31,27,30,27,20,22,34,29,34,27,35,32,27,28,24,33,31,22,30,34,31,27,33,26,23,30,27,24,35,24,26,26,33,26,26,28,28,36,29,23,24,25,34,28,20,45,38,23,31,29,34,30,22,30,25,21,32,32,29,34,21,32,38,30,28,32,34,32,32,29,24,33,29,30,29,30,17,34,26,26,30,20,23,26,35,25,32,32,36,24,39,17,33,34,21,30,24,29,38,20,35,30,28,19,20,31,26,14,19,17,31,29,24,31,28,29,30,23,24,32,29,27,27,16,19,21,24,24,28,26,33,27,21,28,36,27,32,30,29,22,30,27,26,45,35,32,26,21,23,34,26,30,18,19,27,26,18,25,28,22,22,23,28,29,29,27,29,24,27,35,22,31,19,24,32,18,38,31,22,24,23,30,38,24,20,17,31,20,24,18,24,26,30,26,21,31,26,26,17,24,27,28,28,31,25,23,24,26,24,28,21,24,15,22,23,28,28,26,15,26,25,28,21,21,25,24,30,39,20,27,28,30,26,29,23,32,29,29,32,21,27,31,23,26,22,20,28,26,17,31,31,27,30,32,26,23,21,24,25,16,28,21,26,32,16,20,18,24,33,31,31,28,20,31,29,23,22,26,29,18,22,32,22,25,23,28,25,26,37,30,31,27,22,25,22,18,22,22,25,21,27,24,21,30,20,29,27,23,22,26,32,18,27,26,17,26,27,28,25,30,22,30,26,23,23,20,31,26,22,22,23,24,22,23,14,28,26,20,20,33,20,20,24,26,25,25,30,26,21,31,29,14,24,18,27,22,15,20,28,28,26,16,21,25,26,29,32,21,32,27,20,31,23,21,15,24,21,30,25,25,29,28,26,30,26,27,30,17,25,29,29,22,28,27,36,25,27,23,28,26,34,20,26,29,26,28,18,16,21,23,28,20,25,22,28,24,24,23,21,21,19,21,33,32,24,18,22,16,35,29,28,23,23,32,17,23,21,11,21,27,27,25,28,26,29,25,21,30,24,32,30,20,23,28,25,15,24,27,37,29,30,20,14,20,27,21,29,19,25,31,25,23,32,20,18,19,24,21,24,17,17,17,24,25,22,27,26,23,25,18,24,20,29,30,20,26,34,17,28,28,33,19,16,23,19,28,23,25,26,28,22,34,16,24,24,32,26,19,20,23,26,21,19,22,25,24,20,26,35,20,31,24,22,22,30,24,20,21,16,21,26,21,22,25,13,27,20,18,32,24,23,32,23,29,21,22,21,25,13,16,21,21,18,20,29,20,26,21,19,21,20,14,32,16,14,24,22,27,13,21,22,27,14,20,24,20,26,19,19,24,18,21,20,21,26,26,27,22,25,24,16,28,21,28,25,29,26,23,21,21,23,19,19,17,27,19,26,26,23,27,13,19,22,16,24,24,27,22,14,20,25,24,27,26,26,26,17,17,23,18,25,21,24,28,22,26,21,27,24,18,25,26,15,18,25,28,22,31,15,23,22,19,28,26,14,19,24,17,26,24,26,19,21,24,23,14,16,31,22,25,16,21,20,23,18,20,14,16,21,21,17,22,17,22,21,18,31,21,20,25,24,19,21,19,20,25,21,21,23,29,27,14,20,22,19,24,17,19,19,20,22,30,23,21,24,24,20,19,14,17,18,19,27,28,21,26,22,24,28,20,21,17,25,22,18,21,23,23,22,21,29,31,18,15,21,19,22,19,16,23,28,18,21,26,15,20,20,31,25,12,19,18,15,22,18,26,30,16,20,26,21,20,29,29,26,18,16,30,25,21,24,20,29,20,26,20,13,20,25,19,22,16,22,21,20,25,26,13,25,23,21,17,20,15,17,17,20,19,20,12,22,15,24,20,21,17,16,24,22,27,13,17,20,17,22,28,18,19,24,19,24,15,15,14,19,15,23,26,21,22,24,20,14,19,29,24,22,29,20,19,17,19,23,24,26,19,17,19,17,22,15,35,28,16,28,18,23,25,20,16,22,27,26,22,22,22,24,18,19,12,21,21,27,18,23,13,14,19,24,10,20,21,19,23,22,20,21,21,16,15,28,23,31,20,21,18,23,17,26,28,14,24,18,25,14,22,28,17,22,26,22,18,17,23,21,12,17,17,28,23,16,14,13,16,28,8,26,17,8,18,14,22,18,19,17,20,19,20,21,19,26,12,16,16,13,17,18,29,23,28,16,18,22,19,17,18,28,18,22,14,18,19,25,11,21,17,20,22,19,17,20,13,26,21,22,21,19,22,16,17,25,17,15,20,18,19,12,15,22,14,14,22,22,16,18,15,20,19,19,23,11,20,24,14,29,10,13,19,21,18,17,25,13,14,22,20,19,21,29,24,16,13,22,17,14,14,17,15,24,16,12,20,20,14,26,16,24,14,19,18,26,21,24,22,14,27,18,21,18,18,23,14,12,24,16,18,20,13,27,25,12,23,21,17,15,11,23,21,24,15,18,20,20,20,21,12,27,17,23,12,18,23,23,16,24,25,30,24,25,20,24,16,22,11,14,23,14,19,18,16,9,14,17,17,26,12,29,23,18,12,16,21,22,17,29,20,17,18,18,23,15,12,19,15,18,15,23,25,13,22,22,21,14,15,15,13,19,15,24,12,19,10,12,20,15,14,12,19,18,16,18,25,18,20,12,22,21,20,18,16,19,26,21,15,17,16,15,20,27,19,21,25,16,12,15,18,12,12,14,12,18,12,23,17,19,23,13,16,19,22,14,16,17,23,11,20,13,18,18,14,27,21,17,23,15,17,14,17,10,29,13,27,16,13,10,17,15,17,24,22,20,11,17,34,21,21,17,14,17,23,14,18,20,17,16,11,18,17,16,13,19,9,13,15,28,15,10,12,10,18,23,22,13,14,12,16,16,19,15,19,8,12,12,12,15,14,21,15,10,19,11,21,17,9,23,18,21,10,22,20,16,17,11,16,26,26,12,22,15,25,17,23,21,17,14,9,21,11,13,18,22,21,12,13,18,17,18,13,16,10,19,22,24,12,21,6,14,25,22,20,20,19,15,13,22,23,22,15,15,18,20,18,13,18,13,14,19,14,14,22,13,19,21,14,19,19,18,16,22,17,24,21,21,15,8,16,11,19,15,23,13,19,16,18,17,20,22,15,14,19,21,12,20,12,15,22,17,12,12,17,9,17,16,17,14,20,15,16,19,16,20,16,22,18,16,15,15,13,16,21,19,18,22,24,16,17,13,10,17,18,17,18,16,15,16,15,21,12,17,11,25,19,11,18,21,15,15,9,19,13,16,14,16,28,10,21,15,22,22,14,22,18,8,10,14,21,15,14,16,15,12,17,21,23,12,10,15,13,16,22,23,16,14,12,24,15,16,14,20,24,17,16,11,17,16,13,18,14,22,10,13,12,21,18,16,13,13,13,13,13,14,15,24,19,9,16,9,15,11,15,17,16,15,11,16,11,28,10,13,16,14,18,14,10,8,18,18,28,16,18,16,20,18,15,16,18,16,21,12,18,17,16,19,9,20,17,14,18,10,14,14,16,17,19,12,15,15,20,18,12,18,20,17,9,16,20,21,13,15,16,16,15,25,27,12,13,21,15,17,12,12,14,8,18,14,10,13,18,20,18,16,16,15,14,18,10,13,29,13,15,17,16,19,16,14,19,14,20,20,18,17,15,23,13,15,17,15,13,14,10,6,13,15,11,18,17,14,19,12,8,17,23,23,19,15,18,18,21,22,16,9,12,12,18,11,18,16,16,8,12,9,13,21,11,20,15,18,11,10,17,17,14,3,8,11,19,15,23,15,9,19,22,15,12,18,11,21,16,22,14,13,16,12,10,20,18,13,16,19,18,7,16,11,15,18,11,14,22,19,11,18,8,17,13,15,17,13,10,18,12,15,14,13,15,12,10,11,15,12,17,13,16,16,13,11,18,13,8,15,8,15,15,12,18,17,16,18,16,22,15,18,6,11,24,17,9,10,16,18,11,15,13,16,17,21,20,14,15,11,11,17,13,13,19,15,17,14,19,18,17,16,17,11,9,17,12,12,15,13,15,10,16,18,18,15,12,20,20,10,16,13,15,17,7,15,9,16,14,13,11,12,15,21,16,14,17,23,13,14,14,18,12,17,25,18,11,16,13,8,24,19,21,13,12,16,9,17,20,15,15,24,11,9,16,9,14,11,13,12,13,8,17,11,13,11,23,16,21,20,15,15,23,15,9,13,10,11,20,15,12,13,15,9,14,16,7,17,16,14,13,12,15,16,15,8,10,13,15,19,7,11,21,11,13,13,12,12,14,15,18,10,13,12,19,18,8,11,14,18,8,12,12,16,19,19,5,15,21,13,20,21,18,20,10,14,10,7,12,24,15,12,12,18,17,12,11,11,10,15,13,11,12,11,13,11,15,11,16,13,20,17,19,9,18,14,16,15,11,17,11,10,8,11,20,8,16,12,10,20,18,12,15,19,9,18,15,8,12,16,22,22,15,8,11,16,14,13,13,16,14,15,17,15,11,11,12,14,14,18,10,21,14,14,20,13,15,15,14,18,12,13,9,12,20,12,8,11,15,14,20,8,10,12,10,9,8,16,12,7,7,14,16,14,8,14,12,9,16,10,11,13,11,14,9,8,9,14,10,16,16,15,11,7,10,15,17,8,15,14,16,16,13,8,11,8,15,13,17,11,15,18,12,13,16,8,12,12,13,6,18,11,17,16,8,16,8,14,9,15,13,21,11,11,16,10,9,11,9,10,11,13,13,12,13,6,11,14,9,9,23,8,13,12,11,13,10,8,13,12,8,13,17,13,14,19,15,9,11,8,15,14,11,13,15,11,15,13,8,9,11,11,10,7,14,16,15,13,9,13,3,22,11,13,15,12,7,7,10,8,14,14,13,10,13,15,15,13,12,13,13,15,11,15,12,10,8,10,8,8,17,12,21,11,14,18,15,22,10,17,16,11,17,16,15,8,6,10,11,11,10,12,9,13,16,11,11,13,11,15,10,12,16,9,19,11,12,12,11,6,16,13,7,15,8,15,9,12,11,18,8,12,18,13,16,8,14,27,15,8,12,12,7,18,15,10,23,10,16,14,15,12,10,14,10,14,13,13,11,17,11,13,20,13,19,14,20,16,9,13,10,12,10,12,16,14,11,16,21,9,14,8,17,16,16,12],\"v1\":10,\"n1\":6,\"v2\":[16,14,14,13,8,10,12,14,14,13,10,7,12,10,16,14,9,13,12,10,13,14,12,11,9,12,13,7,12,14,15,13,15,7,9,9,12,14,13,19,10,14,5,7,8,18,6,19,11,13,13,9,10,10,9,11,19,8,13,13,15,14,15,10,4,12,18,9,6,14,10,15,14,16,9,16,17,17,13,11,14,17,12,15,16,12,14,12,9,11,10,10,17,14,14,12,13,11,21,13,11,11,14,9,13,15,10,10,13,10,11,15,8,6,8,10,18,11,11,21,12,8,15,7,14,10,13,17,12,15,9,12,13,10,7,13,15,12,11,11,16,11,11,10,10,12,15,8,10,5,12,16,10,10,9,11,14,14,18,13,9,9,12,13,10,9,14,12,17,11,10,7,11,13,12,14,10,7,15,7,11,7,9,12,8,11,16,9,6,7,9,17,15,10,17,15,12,7,8,10,8,14,15,12,14,9,7,8,7,11,15,8,7,8,8,9,13,8,8,13,9,16,19,9,12,6,11,11,8,7,14,14,14,13,10,12,12,8,10,17,11,16,17,13,11,18,15,10,6,16,16,12,11,14,9,15,10,11,9,12,11,14,11,11,8,13,7,15,20,11,10,11,10,10,9,12,10,7,14,13,11,7,11,10,11,12,19,17,22,12,10,10,13,10,6,11,11,12,20,14,15,11,12,9,12,15,15,9,12,14,13,10,13,14,16,11,10,8,13,11,9,9,13,11,13,10,10,14,16,10,11,9,18,21,14,12,9,13,8,9,11,12,7,11,13,8,10,16,5,9,17,11,15,9,10,10,18,10,11,11,6,9,16,13,15,5,14,8,14,6,7,8,11,13,12,6,10,8,16,12,9,10,16,18,12,8,9,4,4,11,5,13,12,11,10,6,9,10,11,7,9,8,11,11,10,8,17,10,13,7,6,10,7,16,8,7,12,15,13,7,13,14,10,17,15,11,11,12,12,16,7,14,12,8,12,10,12,9,9,11,5,8,8,4,13,7,11,10,8,13,10,8,15,14,13,12,10,9,10,12,12,12,10,12,16,10,14,8,18,12,7,5,10,16,13,8,7,7,15,7,14,6,12,7,6,7,7,8,12,12,8,12,15,5,7,9,8,7,7,6,16,10,11,11,15,14,9,6,17,5,6,9,7,10,13,12,11,10,14,13,9,9,8,11,10,12,10,15,9,8,9,13,9,12,16,14,12,12,7,16,11,13,4,10,11,10,8,7,9,11,5,15,9,3,13,12,13,2,12,10,9,10,10,10,8,12,10,11,8,11,8,18,7,8,15,12,15,9,15,10,8,9,7,9,15,16,12,10,11,5,10,10,12,9,16,12,11,8,9,11,6,11,10,10,11,9,9,14,6,10,5,15,6,9,4,9,8,8,4,10,11,9,4,13,8,12,8,10,6,16,15,6,12,13,10,7,9,10,9,16,15,7,7,8,10,11,8,8,8,14,17,9,7,8,12,8,11,8,17,8,7,7,11,13,12,6,11,11,11,18,14,4,10,14,6,17,6,6,11,11,18,11,16,10,7,10,5,15,9,13,15,8,7,6,9,6,11,11,7,13,8,13,8,10,5,9,9,8,10,11,9,8,12,16,10,14,10,5,16,8,4,9,11,7,13,5,4,13,10,10,5,11,15,14,11,13,11,6,14,11,10,9,9,4,9,9,7,6,13,11,7,11,8,9,12,11,10,5,8,8,10,9,8,14,13,12,13,8,16,4,10,6,11,9,8,6,5,8,14,9,15,9,10,16,6,9,12,9,16,7,5,7,13,11,11,14,9,7,4,2,12,12,8,8,5,13,14,9,13,13,10,15,3,9,9,13,14,4,15,8,4,9,13,5,12,19,9,10,6,7,7,8,9,8,17,4,7,8,6,10,10,6,3,11,10,14,12,7,9,10,11,7,10,9,10,9,12,2,5,5,8,8,7,7,4,8,13,9,8,14,7,13,9,5,3,1,11,7,14,6,15,15,10,7,8,13,11,9,13,12,8,11,1,12,12,14,12,9,15,7,11,8,14,7,8,11,11,8,5,10,5,10,5,9,15,11,10,2,6,6,7,7,7,8,6,7,15,9,5,10,12,8,8,13,6,10,10,8,12,6,4,6,11,4,7,10,11,10,13,11,14,4,7,11,11,9,8,11,10,6,15,12,11,7,10,8,7,12,7,13,7,11,8,5,7,8,12,15,14,11,9,11,8,8,8,5,15,7,10,8,15,10,10,10,12,11,7,10,14,6,6,8,5,7,3,12,8,10,6,6,9,11,7,8,15,10,8,8,3,12,6,7,5,6,9,8,10,13,10,11,10,9,5,11,9,9,7,10,9,13,11,7,11,4,8,9,9,9,9,4,8,6,6,6,10,7,10,8,8,6,9,7,8,10,14,6,11,7,9,9,9,11,6,7,7,3,7,6,15,6,8,9,9,10,5,12,13,11,9,6,13,10,13,9,9,6,13,11,10,7,7,8,9,8,9,5,8,6,11,13,8,6,10,8,6,10,11,6,12,11,4,10,7,10,11,13,12,17,8,9,8,11,5,7,7,7,12,9,8,15,15,7,9,7,9,9,7,11,15,10,7,6,6,5,6,9,16,10,10,4,7,8,17,7,8,10,7,10,12,13,11,12,11,8,5,12,9,6,12,11,7,12,5,9,14,8,7,9,2,8,6,2,6,10,12,11,9,7,11,11,9,7,10,6,6,9,7,9,8,5,5,6,7,4,11,14,8,10,11,12,5,8,7,9,7,10,8,7,7,13,5,2,4,7,4,5,10,7,6,7,4,4,9,10,7,6,6,12,7,7,8,9,14,14,9,11,4,10,9,6,15,13,9,14,8,5,9,8,9,7,10,6,13,8,11,13,7,6,14,10,11,5,8,13,9,6,9,10,7,11,7,5,11,5,7,1,4,8,9,7,6,9,6,9,8,10,7,5,8,14,7,7,5,4,10,13,8,6,8,3,8,6,7,5,7,11,9,7,8,10,8,4,6,6,9,6,14,7,7,4,9,5,13,10,13,8,7,5,10,3,11,10,7,6,5,9,10,6,8,9,5,6,9,8,6,12,18,8,8,8,8,7,5,11,12,10,9,8,7,7,9,12,7,3,12,7,8,6,11,12,8,10,10,9,12,6,11,8,2,13,4,2,8,7,9,7,7,12,9,6,10,5,8,7,5,8,4,5,7,6,7,4,7,14,9,3,7,7,7,13,9,7,6,6,7,9,4,14,7,7,6,6,7,5,9,5,5,5,6,9,12,8,8,9,6,9,5,6,4,7,11,4,13,6,2,9,7,9,9,1,8,6,6,8,14,5,7,11,5,7,11,5,3,9,7,9,5,7,9,14,10,4,4,8,10,8,7,8,7,8,10,8,8,12,10,12,9,10,6,6,9,8,4,7,13,6,9,10,5,4,9,7,9,11,11,10,4,7,10,9,5,8,2,9,9,5,10,9,7,8,3,6,5,11,8,10,4,10,10,5,4,6,11,10,9,14,9,12,8,6,8,11,9,12,6,9,4,7,7,5,15,3,8,11,6,10,4,11,10,5,9,6,6,9,6,6,3,10,10,4,14,14,13,11,6,7,7,6,9,5,8,12,5,9,7,6,9,6,5,9,9,10,4,10,7,8,18,11,7,10,8,11,7,5,8,6,12,13,6,6,13,5,7,6,3,13,7,14,3,8,12,12,6,9,8,8,15,8,7,8,8,8,13,7,11,2,8,8,9,13,6,10,10,11,5,6,12,4,6,6,5,5,3,7,9,10,11,10,10,9,7,7,7,8,6,2,11,7,5,5,12,5,8,9,9,8,12,4,7,10,8,13,8,8,8,2,10,10,7,5,10,10,6,6,10,6,4,4,13,6,6,7,9,7,7,3,8,6,7,5,8,9,5,8,10,5,7,5,7,3,11,6,10,4,11,3,6,9,12,8,2,9,4,6,9,12,9,8,6,8,4,7,5,16,6,5,8,6,5,10,14,9,5,11,10,6,11,10,9,5,14,8,12,4,7,7,7,9,9,7,7,8,6,13,7,13,11,9,8,5,4,4,9,7,4,3,7,3,11,5,8,7,6,7,7,11,6,6,10,12,7,8,4,4,10,10,10,2,4,10,6,6,5,10,7,3,3,11,11,5,6,6,5,9,7,6,10,14,10,10,6,9,9,12,7,6,6,7,8,9,5,8,4,4,12,9,4,7,12,9,9,8,8,12,8,4,7,8,11,12,6,4,6,8,5,7,0,7,8,2,7,3,8,7,8,10,6,10,8,4,7,7,12,9,6,5,11,4,6,13,10,9,6,5,9,5,10,4,6,6,2,9,9,5,1,5,5,8,13,8,8,5,4,7,10,3,6,7,5,9,6,4,7,5,8,9,10,6,6,3,11,7,10,7,11,5,7,9,6,8,7,9,12,5,12,3,9,6,10,1,5,6,12,7,10,6,6,4,5,8,9,5,6,3,8,12,8,7,12,9,13,9,3,9,11,8,6,7,9,7,7,9,14,6,11,9,6,3,3,6,6,8,11,6,10,7,3,7,8,5,7,7,7,8,8,4,3,5,8,8,4,5,8,13,4,8,6,9,7,9,6,7,5,8,15,12,6,7,8,5,4,9,7,4,8,8,4,4,4,5,7,12,8,5,8,5,5,6,7,3,3,8,7,5,8,4,5,5,7,5,11,3,11,9,5,12,5,9,4,4,6,7,2,5,7,9,5,6,10,10,12,2,5,4,7,7,13,5,5,5,3,10,7,9,5,6,5,6,8,7,5,5,7,8,8,2,5,7,2,3,12,11,7,8,8,6,8,7,6,4,7,11,12,5,8,9,4,5,9,4,4,5,7,3,8,7,7,5,12,8,5,5,4,7,4,3,4,5,7,5,1,9,7,3,6,3,2,2,15,5,2,6,6,8,7,5,4,8,7,6,8,6,10,7,6,7,7,6,7,8,8,8,9,11,3,3,3,4,8,8,7,7,9,7,4,3,6,4,5,3,5,7,8,4,5,3,8,5,11,9,8,6,2,7,9,7,3,3,5,6,1,4,9,7,5,11,5,6,3,4,6,10,8,2,8,6,7,7,10,4,4,2,6,6,5,6,7,8,6,4,5,6,7,7,2,4,11,5,12,3,2,12,6,3,9,11,9,6,9,6,7,8,6,5,9,6,12,5,9,5,6,7,7,6,10,4,9,7,6,5,5,8,8,5,4,4,8,4,4,7,10,5,5,6,6,4,4,9,9,6,9,3,7,7,8,5,5,2,3,6,7,4,7,1,4,6,5,8,6,8,13,7,9,6,5,6,10,8,6,2,5,6,4,5,3,6,5,12,9,6,1,6,5,5,3,7,6,11,5,11,8,1,6,5,1,5,4,6,5,6,7,8,12,5,8,2,8,6,10,9,8,5,2,6,9,4,11,5,9,6,6,4,5,3,6,8,9,9,5,5,8,16,3,7,6,6,4,5,6,13,9,6,4,9,4,6,9,5,6,7,4,6,10,10,2,4,5,5,5,5,6,7,7,7,4,5,8,8,9,3,7,4,6,3,5,3,8,5,6,9,6,6,11,7,5,5,8,4,6,3,1,13,6,4,8,6,5,7,4,4,5,9,6,8,2,5,2,5,9,5,4,8,6,6,3,3,13,8,8,6,10,6,5,6,3,3,7,4,5,9,5,5,4,10,5,5,7,8,6,11,2,3,7,6,4,6,4,7,7,9,2,3,4,6,6,3,5,8,8,5,6,4,3,9,6,9,10,3,4,5,6,9,4,5,6,7,7,3,9,11,5,4,6,3,6,5,7,4,4,8,9,4,5,9,2,11,9,10,3,11,3,11,9,5,6,4,4,9,2,5,3,6,4,7,5,6,11,4,5,6,3,3,7,7,6,7,9,7,9,6,14,7,5,11,8,3,4,11,7,6,7,3,5,5,7,7,7,6,3,3,7,5,3,9,8,4,4,3,11,4,5,5,6,6,4,6,9,5,3,3,5,3,3,10,4,3,8,10,3,5,6,11,5,6,5,6,3,5,10,4,5,3,7,10,7,10,5,6,6,4,7,4,6,10,9,7,8,4,9,10,7,5,4,2,2,5,7,6,6,5,8,4,7,7,11,6,5,4,5,3,7,5,5,7,9,6,6,2,6,9,3,4,6,12,4,10,1,5,9,5,1,4,7,4,1,8,4,9,2,8,3,6,5,8,4,8,6,4,6,5,3,7,8,8,7,4,7,5,6,4,11,8,6,5,2,6,5,3,7,5,4,6,10,7,4,5,9,9,3,7,7,4,12,8,6,7,9,4,7,5,7,2,6,8,9,4,12,3,7,7,7,4,6,1,2,7,5,7,3,8,5,5,9,6,6,5,6,7,9,10,4,3,5,8,9,10,2,8,5,4,6,5,4,5,5,1,6,10,5,6,7,6,5,4,3,9,5,1,5,6,6,8,8,7,6,3,4,8,0,1,3,5,4,4,3,3,5,8,5,6,4,5,3,3,4,7,4,4,4,5,7,3,4,9,4,4,8,5,6,5,8,3,5,3,6,3,5,5,8,5,5,3,6,10,5,3,5,9,7,8,8,5,3,8,5,6,5,5,5,5,14,7,6,7,4,5,7,7,8,9,6,8,5,5,2,7,7,5,2,7,6,4,8,6,3,4,7,7,7,1,7,4,4,5,6,3,8,6,7,4,5,7,8,4,5,3,6,7,4,4,5,9,1,4,5,7,2,7,4,4,4,8,5,7,3,7,6,11,3,10,5,3,9,5,5,7,8,1,10,5,6,8,7,5,8,7,3,10,5,3,3,8,5,5,6,4,6,6,4,5,2,2,8,2,7,4,4,4,4,8,3,2,10,1,9,5,6,6,10,6,7,3,5,8,5,8,7,9,7,5,6,6,4,5,3,5,5,4,7,7,5,5,5,3,8,5,7,10,8,5,3,4,4,3,3,7,7,2,6,5,6,2,6,6,2,6,6,6,2,4,2,8,8,6,3,8,10,8,3,4,4,6,7,6,4,6,3,7,5,4,5,4,3,11,7,4,2,2,8,6,4,6,4,10,7,4,5,5,5,8,3,4,3,6,7,5,10,6,7,3,7,5,6,6,1,4,8,7,2,3,3,4,1,4,7,5,7,7,2,3,4,1,4,5,3,5,4,7,5,10,7,4,7,6,9,6,7,1,4,10,4,5,4,6,2,4,2,10,4,5,3,5,2,5,7,6,4,4,4,3,6,4,5,6,6,3,4,5,8,2,4,1,7,5,2,4,5,7,4,5,10,2,8,3,3,6,2,3,9,8,6,11,5,6,4,11,3,6,10,4,7,3,1,6,5,3,5,4,5,5,5,5,8,3,3,8,1,3,4,0,3,7,8,5,8,1,7,2,5,4,5,6,3,9,4,3,3,6,2,10,8,9,3,3,8,7,5,8,6,9,5,5,3,5,4,1,3,5,6,5,6,1,2,9,7,4,5,6,7,6,5,10,3,5,7,6,3,4,6,6,7,1,5,8,4,11,4,3,2,4,4,1,2,4,9,6,5,5,6,2,5,7,3,4,3,6,8,5,7,8,4,6,7,6,11,6,9,3,4,2,6,6,4,2,5,4,3,5,1,9,6,2,3,3,6,4,9,6,7,6,6,2,4,2,3,7,4,2,4,9,5,4,2,4,7,7,4,5,7,2,7,5,2,3,2,6,5,6,3,2,3,5,5,9,4,8,7,3,6,4,7,9,6,5,5,5,10,7,3,6,2,4,6,5,5,5,4,7,7,3,4,3,2,4,2,3,3,3,5,3,4,5,3,8,7,4,7,9,4,1,3,4,2,5,4,6,4,6,5,9,7,3,5,8,5,6,1,4,6,2,1,5,6,7,6,1,5,9,6,7,5,3,2,5,2,2,1,6,6,5,6,8,5,9,6,6,10,3,4,4,6,3,7,6,3,7,6,5,5,7,4,5,8,3,6,5,4,0,2,4,8,4,5,7,2,4,5,7,2,1,6,7,5,10,7,3,2,8,6,5,4,3,4,3,3,5,5,6,7,3,3,6,2,3,4,3,4,7,6,7,4,0,5,4,5,7,6,2,0,5,2,6,2,5,4,3,2,3,5,2,6,2,4,2,4,6,2,4,3,5,2,6,3,2,1,4,5,5,6,6,2,8,1,4,3,2,4,2,2,4,5,5,9,5,4,6,7,3,4,5,6,6,1,1,2,9,3,1,2,6,4,6,4,4,5,3,9,3,2,3,5,5,2,5,7,2,2,3,5,7,1,2,12,3,4,2,4,2,5,2,4,3,5,6,1,3,5,8,4,6,7,6,4,7,1,5,4,3,2,7,8,1,1,3,0,7,11,3,7,5,2,6,5,3,6,4,4,7,5,4,3,2,4,3,9,5,3,4,3,4,5,3,4,2,7,2,5,2,6,1,5,3,2,7,1,4,4,4,6,6,8,3,6,3,6,5,3,5,7,3,4,6,5,4,3,9,3,8,1,7,3,9,3,8,6,3,8,2,4,11,4,6,8,2,5,3,2,0,4,2,7,5,5,8,7,2,8,1,7,3,5,3,3,8,4,3,5,4,6,4,4,2,2,3,0,3,5,2,0,3,2,5,3,2,7,10,6,7,6,7,5,3,5,3,5,3,5,9,6,5,7,2,2,3,6,2,3,10,9,7,5,6,7,4,5,3,4,6,6,2,6,3,4,5,5,3,3,7,7,3,3,4,7,3,8,6,4,3,3,6,2,5,4,6,4,3,5,2,4,3,6,1,0,2,4,2,2,5,2,3,11,2,2,2,1,5,4,2,6,2,3,4,4,7,5,8,3,3,3,4,5,2,2,3,4,2,6,10,3,2,4,4,3,6,5,3,6,3,4,2,7,4,4,3,8,4,4,6,1,2,2,4,3,3,3,4,6,3,6,4,5,3,1,2,3,2,2,6,6,5,7,4,2,2,2,9,3,8,4,4,3,5,6,6,2,1,4,7,3,2,9,4,4,4,3,4,4,5,5,5,4,4,2,4,7,2,4,2,1,4,3,4,4,3,6,5,6,5,4,3,3,6,5,8,3,3,5,1,3,7,3,4,2,4,1,11,4,1,7,8,8,7,7,4,3,5,8,3,3,3,2,5,7,4,6,5,2,0,3,0,2,4,4,3,4,3,0,3,3,4,3,2,6,3,3,5,5,4,1,2,4,6,4,3,2,6,7,6,4,1,5,1,2,4,4,4,5,3,3,3,7,3,5,2,2,8,5,5,1,1,5,7,5,7,2,4,2,4,2,2,2,2,4,1,2,4,8,0,3,4,5,6,2,4,7,4,7,2,5,4,7,5,3,6,4,5,2,5,2,1,3,2,0,2,11,4,6,4,3,2,4,3,7,4,4,3,4,7,4,4,1,5,2,3,8,5,2,3,3,7,4,3,3,3,4,7,4,1,5,4,7,5,3,3,6,3,2,2,4,7,1,4,1,2,1,5,4,1,3,4,1,3,3,5,4,4,5,5,5,4,3,5,2,7,2,4,8,2,3,4,5,4,4,4,2,4,7,4,3,7,3,6,4,4,5,5,1,6,3,4,7,2,4,11,3,2,4,4,5,3,1,6,2,3,9,4,6,3,0,7,1,7,1,5,1,3,6,3,2,3,3,3,1,6,8,4,2,4,6,4,0,3,3,5,8,5,3,4,1,3,3,5,6,2,6,3,8,4,2,3,5,5,3,3,6,6,3,7,7,1,5,7,4,5,2,6,6,2,5,1,2,2,5,4,1,3,4,1,5,5,3,3,3,1,4,4,3,5,0,4,5,1,4,5,6,3,1,4,7,2,2,7,6,3,6,2,7,4,1,6,3,4,3,3,2,2,4,6,3,4,4,4,5,7,8,2,5,1,1,4,3,1,2,3,2,1,4,6,8,1,3,1,2,3,4,2,3,10,1,6,6,2,1,2,1,5,4,2,5,4,5,2,3,4,1,6,1,5,4,1,6,2,6,5,5,3,1,3,2,5,11,5,4,4,6,2,5,3,2,3,5,6,6,1,7,2,2,4,8,6,3,3,5,1,2,4,3,9,4,3,4,0,2,6,4,6,3,4,5,6,3,2,3,4,3,5,6,3,5,3,2,1,2,6,3,1,7,3,2,0,2,4,3,6,1,4,3,3,8,9,3,1,4,3,2,6,4,6,4,3,5,2,4,4,2,7,6,4,2,5,2,1,4,5,3,5,3,4,1,1,2,1,10,3,4,1,1,6,5,4,4,7,6,3,4,4,0,6,4,3,8,2,4,3,1,2,7,4,2,4,6,6,2,4,7,4,3,3,3,6,4,5,6,5,9,2,3,4,2,3,3,1,4,6,2,2,3,3,8,2,1,1,1,1,2,3,5,3,4,6,4,5,1,2,2,3,2,6,3,2,3,1,1,3,1,5,3,4,3,1,4,4,4,3,4,2,2,5,2,8,3,3,0,2,3,4,5,4,5,7,4,3,5,2,3,5,6,4,4,4,2,8,5,4,3,2,7,2,0,3,2,2,3,2,5,3,2,4,2,4,6,3,1,1,3,3,2,1,4,5,3,1,5,4,4,5,5,1,4,2,1,1,4,2,5,5,6,1,3,4,8,3,4,2,2,1,2,5,1,5,2,1,4,3,4,5,4,7,3,2,3,2,3,4,2,1,3,3,5,4,5,1,2,2,4,5,4,5,6,1,6,2,6,3,3,6,3,0,0,9,1,1,4,5,2,2,4,3,3,6,3,6,3,4,5,5,4,0,5,6,5,4,7,2,10,4,4,5,3,3,4,5,5,3,5,5,9,3,5,1,5,3,3,5,5,3,4,4,5,3,1,1,4,4,6,2,4,5,3,4,1,2,2,5,9,2,1,2,5,4,10,4,4,4,0,8,0,4,2,3,0,3,1,5,2,4,5,2,3,2,3,2,6,6,2,1,1,1,0,5,2,2,2,6,4,4,3,1,0,4,4,2,3,0,5,1,1,2,1,1,6,4,3,5,2,5,4,9,3,3,5,6,8,3,5,3,2,4,5,3,3,3,6,7,3,3,3,2,7,4,2,1,6,2,4,5,3,5,4,2,4,2,2,7,3,6,4,8,4,0,4,4,2,6,2,6,3,2,4,3,5,2,3,3,2,4,3,9,4,5,3,6,3,8,5,6,5,5,2,6,5,1,4,5,1,3,1,4,5,2,3,2,3,3,5,4,5,5,3,1,3,5,1,1,3,4,7,3,5,2,4,7,3,1,3,1,2,3,7,4,4,2,6,5,5,4,6,0,3,2,2,2,1,4,5,2,3,3,1,6,5,2,3,4,1,2,3,1,1,2,3,2,2,3,2,2,2,3,4,1,5,1,2,3,3,4,4,5,4,1,5,3,1,3,1,4,2,1,4,2,2,3,5,1,4,2,7,5,3,4,5,8,2,3,3,4,0,4,3,3,3,6,4,2,2,2,7,0,3,1,4,4,6,2,2,1,4,3,1,4,6,3,2,2,0,4,3,4,4,2,1,4,4,3,4,3,4,4,1,2,3,2,3,6,4,3,2,3,6,4,2,3,5,5,7,3,3,3,1,2,3,4,3,5,2,2,1,8,4,3,2,2,5,3,3,0,5,1,2,1,3,4,3,4,5,2,5,2,3,6,4,8,4,5,4,1,2,5,1,5,0,3,2,1,5,4,6,2,4,4,4,2,2,2,2,3,2,5,4,1,5,6,3,6,1,4,4,4,6,1,1,4,1,1,6,2,4,4,3,5,3,4,3,0,1,3,3,3,2,3,2,4,2,1,1,4,1,3,5,4,6,1,3,3,2,3,6,1,2,7,4,1,2,3,6,5,1,3,2,0,5,2,5,6,2,3,2,2,2,7,1,0,6,7,2,3,0,5,2,4,5,3,5,0,0,1,6,4,4,5,3,5,3,2,2,1,3,4,5,4,3,0,3,3,5,4,2,4,6,2,2,3,6,3,1,2,7,3,5,4,2,2,4,2,5,7,6,3,5,0,3,3,8,5],\"v3\":2,\"n3\":6,\"v4\":[5,5,2,2,4,4,2,3,4,4,3,2,2,4,3,4,3,2,7,2,4,4,2,7,7,2,3,0,3,3,4,5,2,2,3,3,1,2,2,3,1,7,7,5,3,5,5,2,4,3,8,3,4,4,1,2,2,2],\"v5\":3,\"n5\":6,\"v6\":[5,4,3,1,4,8,2,3,2,3,2,4,2,2,2,1,3,7,4,2,3,4,3,6,2,6,5,1,2,6,4,0,0,2,5,3,2,3,3,2,4,3,6,7,0,2,4,1,2,2,6,3,2,1,7,2,2,1,0,3,3,4,2,7,4,5,5,4,1,2,2,3,2,3,5,5,3,3,0,6,6,4,2,4,5,2,2,5,1,2,1,1,3,2,3,3,2,2,2,7,3,5,2,2,2,4,3,1,1,2,8,2,1,1,1,6,4,2,2,2,6,3,6,4,3,6,2,3,5,6,3,4,4,3,1,1,3,3,2,1,6,7,2,2,5,6,5,5,1,2,2,2,2,3,2,2,6,3,3,3,4,5,5,1,3,2,3,3,4,4,5,1,2,1,1,3,1,0,5,5,4,4,4,0,2,4,2,4,3,5,2,0,2,8,5,3,3,7,2,4,3,1,3,0,4,5,4,1,2,4,2,3,1,3,3,4,1,1,5,1,1,4,5,1,3,3,5,3,3,1,1,1,3,4,3,2,2,4,2,3,4,4,7,5,4,2,1,6,6,1,1,4,1,5,1,2,2,3,7,4,4,0,2,3,1,4,1,2,5,7,5,3,2,5,3,7,3,1,1,1,1,3,5,2,1,5,0,3,0,2,1,3,4,3,4,2,1,3,2,2,7,2,2,0,5,8,8,3,2,3,2,4,1,4,3,3,3,2,2,1,3,1,1,1,5,1,2,4,1,5,2,3,1,2,4,5,0,1,4,6,0,2,1,3,3,1,2,2,3,5,5,3,2,3,2,3,2,2,5,5,2,3,0,1,1,3,4,3,2,5,3,0,2,5,5,2,2,2,1,4,4,4,0,3,6,3,1,1,4,2,4,2,2,0,4,0,3,0,3,2,5,1,2,3,2,3,2,3,1,2,3,2,1,1,4,0,4,4,4,5,3,2,6,4,4,4,3,4,2,2,2,2,4,2,3,4,2,3,1,5,3,5,1,4,2,1,7,2,3,3,2,5,1,2,2,4,1,1,1,2,1,3,1,4,2,1,3,2,7,3,2,3,1,1,1,2,1,0,7,3,1,1,2,7,3,2,6,4,6,3,2,3,3,3,5,3,4,3,2,3,4,4,2,1,4,5,3,3,3,3,1,1,3,1,1,0,1,5,3,0,2,2,6,4,3,3,1,3,2,2,7,3,3,2,4,3,3,4,1,1,4,3,3,3,2,5,4,3,2,4,3,3,0,3,4,3,1,2,4,3,1,3,3,1,2,4,1,0,4,5,5,3,2,2,2,1,1,0,2,2,3,3,1,3,2,4,1,1,4,4,2,3,2,2,1,3,2,4,2,1,3,2,2,2,3,3,2,2,5,3,2,1,0,2,0,1,1,2,3,2,4,1,2,3,2,4,2,4,2,5,2,2,3,3,4,5,2,5,7,4,0,3,5,3,5,2,2,0,2,4,2,3,3,3,0,5,5,2,2,0,4,0,3,2,3,4,3,2,1,1,0,1,6,1,1,5,3,3,4,3,5,3,2,2,0,3,9,2,2,3,0,4,2,2,2,6,3,3,5,1,4,3,1,1,3,2,4,1,4,2,1,2,3,3,5,1,8,8,3,5,3,4,2,5,3,1,0,3,2,2,2,3,7,2,0,2,3,2,2,0,2,3,3,2,2,1,7,1,1,1,1,6,2,1,2,3,4,6,2,8,2,2,1,5,2,6,2,1,1,5,3,1,2,3,3,2,2,1,4,2,3,5,1,1,1,3,6,1,4,3,4,3,4,4,1,3,3,3,2,2,2,3,1,2,3,1,1,1,3,2,1,3,2,2,4,2,0,5,2,1,1,5,5,0,5,3,2,1,4,2,5,6,4,1,3,3,2,2,2,4,2,3,1,3,4,2,4,3,1,1,4,4,0,1,3,2,2,0,2,4,4,1,8,1,2,3,3,3,4,6,3,4,2,1,4,4,1,2,4,4,3,2,2,2,4,4,0,0,5,2,1,2,5,1,5,3,1,2,2,2,2,2,3,2,3,4,6,3,2,2,0,3,4,3,3,2,2,1,2,2,1,1,4,3,3,3,2,1,0,3,2,1,2,0,1,5,1,2,2,2,2,0,3,3,1,4,2,3,1,1,1,2,3,2,3,1,1,3,4,2,2,1,1,0,2,2,1,5,3,4,2,1,3,4,2,2,2,1,5,2,1,1,1,2,2,3,2,2,3,2,3,1,4,2,4,3,0,3,4,1,4,2,2,1,3,4,2,1,2,2,1,0,0,1,2,2,2,1,3,3,3,1,3,1,1,2,1,2,3,3,3,1,1,2,2,1,2,1,4,5,3,4,6,3,2,3,6,7,4,1,2,5,3,0,3,1,3,2,1,4,3,5,4,7,1,4,1,5,1,2,2,1,1,6,3,3,3,3,0,1,2,3,2,3,1,2,3,2,1,2,7,3,4,2,5,2,3,1,2,2,3,4,2,1,0,1,0,1,1,2,4,6,0,6,1,2,4,1,5,3,0,5,1,1,2,0,1,4,2,4,3,1,1,3,1,2,3,1,1,2,2,1,2,2,3,3,2,3,1,1,3,2,3,2,2,3,4,0,3,3,7,1,3,3,1,2,0,0,2,2,3,1,1,1,3,2,0,2,5,2,2,2,2,3,3,1,2,2,2,1,0,3,6,1,1,2,4,1,3,2,0,1,3,2,1,3,4,4,3,2,2,2,2,2,1,3,1,4,1,1,1,3,3,5,1,1,3,1,0,3,5,1,1,1,3,2,5,3,0,3,4,5,3,2,5,6,2,2,3,3,3,2,5,0,3,3,2,0,3,4,1,3,4,3,0,2,3,2,2,2,4,3,4,3,1,4,1,2,4,2,4,4,2,3,2,2,1,1,5,2,2,1,2,4,2,1,5,2,3,2,0,0,1,3,5,5,2,4,3,5,2,0,2,1,3,3,0,2,2,2,2,0,0,1,4,1,2,3,0,3,4,2,3,4,2,5,0,4,2,3,0,0,1,1,2,1,2,4,2,3,5,3,3,3,2,0,1,2,3,1,3,4,2,8,2,2,3,2,3,1,2,2,3,9,4,1,1,2,0,3,2,3,0,0,2,1,0,2,0,5,1,3,5,1,3,2,2,5,1,1,0,3,1,0,1,3,1,0,1,7,3,2,2,2,2,4,0,3,2,0,2,2,0,3,2,3,0,4,3,2,3,1,6,1,0,2,0,1,0,1,1,2,1,2,6,5,5,2,5,5,1,0,2,3,4,1,2,3,2,5,2,1,5,3,2,4,0,4,0,2,1,4,4,1,2,4,3,2,0,1,2,4,2,4,2,4,1,4,2,0,2,3,1,4,3,4,2,1,2,3,2,2,3,3,3,5,2,2,1,3,3,3,3,3,1,2,2,3,3,2,6,1,1,1,3,5,2,4,2,2,3,2,1,1,6,3,3,4,2,1,4,2,2,2,1,2,4,2,3,4,0,2,2,1,0,3,1,2,1,3,4,2,1,2,0,2,3,2,1,5,2,2,0,3,1,2,2,2,5,3,3,5,2,2,1,5,1,2,2,0,1,0,3,3,1,4,2,3,4,4,2,3,4,4,1,1,1,0,3,0,2,4,1,1,2,2,3,3,2,2,2,3,5,2,1,2,5,1,1,4,0,4,0,2,2,2,1,4,2,7,3,0,3,7,1,2,1,1,0,4,2,1,3,1,3,1,3,2,3,4,3,4,0,1,2,0,1,0,0,4,0,5,4,3,3,6,2,3,0,2,1,0,3,2,0,2,1,2,5,4,1,2,0,3,2,0,2,0,0,3,3,3,1,3,1,3,1,3,2,2,4,1,4,2,5,1,1,2,3,1,2,2,1,1,0,2,1,0,6,0,6,2,2,2,3,4,1,1,1,4,3,1,0,1,3,1,1,2,1,2,1,4,1,4,2,2,2,2,3,4,2,1,1,1,2,1,4,1,1,0,1,0,2,1,3,6,0,1,6,0,3,1,2,4,1,1,5,1,0,2,6,4,3,2,2,6,5,3,2,1,1,5,4,2,2,1,3,3,3,1,1,2,2,2,2,1,2,2,2,2,0,2,1,2,3,4,2,1,0,3,2,2,4,3,2,2,4,2,2,1,5,0,1,2,3,0,1,6,1,3,2,1,2,3,1,0,4,3,1,2,0,2,0,1,0,4,2,3,3,2,1,5,1,3,2,1,4,2,3,3,4,3,2,2,2,3,2,8,2,2,5,0,1,3,2,2,1,2,2,1,3,6,5,2,0,5,0,2,1,2,3,1,2,2,2,2,0,3,3,2,3,2,1,2,0,1,0,2,2,2,3,6,1,1,3,3,5,0,1,2,3,1,1,0,1,3,3,6,1,2,2,1,2,1,1,7,2,2,2,4,0,0,1,2,3,2,2,3,2,1,3,1,2,0,1,1,2,3,5,0,0,1,0,3,1,2,2,0,6,2,2,0,1,4,2,1,4,3,1,2,0,0,2,0,0,2,3,2,1,5,1,2,3,2,2,0,1,1,3,2,6,2,0,2,2,4,1,1,1,0,1,1,1,2,2,1,1,2,1,3,4,1,1,1,4,3,2,4,1,2,3,3,2,5,1,1,1,2,0,1,7,2,3,2,2,3,4,3,1,1,1,0,2,2,1,3,2,5,1,3,2,1,1,1,2,3,1,4,4,0,1,1,1,1,2,3,2,3,0,1,3,4,2,1,3,4,1,1,2,2,2,1,0,3,0,1,3,2,1,1,4,4,3,0,1,1,5,3,3,4,2,5,2,1,1,0,3,2,1,0,1,1,2,2,3,1,0,1,4,0,3,1,0,2,1,5,1,0,2,0,1,1,3,1,0,1,2,0,2,0,4,3,3,6,1,5,3,2,3,4,1,2,6,0,3,0,7,1,1,0,0,0,2,2,3,3,4,1,0,1,1,0,4,1,2,3,3,2,5,2,1,3,2,4,1,4,2,1,0,1,1,0,6,3,1,2,1,0,4,0,4,5,1,1,4,2,1,2,2,1,3,2,2,0,2,3,1,2,2,3,1,0,2,3,4,2,1,3,0,2,1,1,2,0,2,2,1,3,3,5,1,3,1,2,2,1,1,0,3,2,2,1,0,4,0,1,2,3,3,2,1,3,0,3,2,2,4,1,2,4,1,0,4,2,1,4,6,3,3,1,4,2,3,1,1,3,1,2,0,1,0,1,3,2,1,2,1,2,2,2,3,1,4,2,1,3,4,2,3,0,2,3,6,1,2,2,2,3,0,0,1,2,0,1,0,1,3,1,1,2,2,3,2,1,0,2,1,2,1,2,0,2,2,7,2,4,1,1,1,0,1,5,1,3,3,2,2,3,1,3,5,3,2,4,1,3,5,1,0,3,2,4,1,1,4,3,1,2,1,0,2,3,1,1,2,4,3,6,1,1,4,5,3,2,4,1,2,0,0,0,4,2,1,0,3,2,0,1,3,0,2,1,0,2,3,4,1,1,6,1,6,2,4,0,4,1,2,1,5,3,3,3,3,2,2,2,1,3,3,4,3,1,3,1,0,2,4,1,1,1,2,1,4,1,1,1,0,1,1,2,4,2,2,2,4,1,2,2,2,4,2,3,2,1,2,2,3,1,3,1,2,0,0,2,3,3,3,1,3,2,3,1,2,1,7,2,2,1,3,2,0,4,3,2,3,0,1,2,2,4,3,5,3,1,0,3,5,2,2,2,4,1,3,1,3,1,4,1,3,1,1,3,2,0,1,3,3,3,1,0,0,3,3,1,1,2,2,2,1,0,6,0,2,0,1,2,5,1,0,1,3,4,0,1,0,4,1,3,1,3,3,2,1,1,2,3,1,3,0,3,6,0,4,2,1,1,1,3,3,1,0,3,4,1,3,1,4,1,1,3,1,0,2,3,2,2,2,1,5,1,2,1,2,3,1,3,2,0,2,4,0,2,0,2,0,4,3,1,2,1,3,1,2,1,0,2,1,1,3,4,0,4,3,1,3,0,2,1,5,0,2,2,1,1,2,0,2,2,3,1,1,0,2,1,2,0,0,2,3,2,1,5,3,1,4,2,3,1,0,4,3,0,0,3,3,1,4,1,3,3,1,1,2,3,3,1,0,4,4,0,5,0,3,3,1,1,0,3,2,3,1,3,0,0,2,2,4,0,4,3,1,3,1,2,2,1,1,4,1,0,2,3,1,3,1,2,0,1,0,2,2,1,2,2,0,3,4,2,2,3,4,0,4,3,2,1,1,4,4,1,3,2,0,3,2,1,1,4,2,3,1,4,0,4,0,1,2,0,1,4,2,1,1,4,4,1,1,0,3,1,2,1,2,3,1,0,1,0,4,2,1,2,0,2,2,1,1,2,2,2,3,2,2,1,2,3,1,0,4,0,5,1,0,0,0,1,3,4,1,2,3,3,0,3,0,1,3,4,2,0,1,4,0,3,1,2,1,3,3,2,2,0,3,3,2,2,1,1,1,4,2,0,1,4,3,4,2,3,2,1,2,0,1,2,1,4,1,2,2,2,2,3,1,1,2,1,1,1,1,1,3,0,2,1,2,1,3,3,0,2,1,1,1,0,4,1,1,3,0,1,3,1,0,2,1,1,1,3,4,5,0,1,1,5,5,2,4,0,1,2,0,2,3,0,4,2,1,3,2,1,2,1,2,3,4,0,0,2,0,1,2,2,0,0,4,2,1,1,0,2,1,0,0,1,0,5,2,1,1,3,0,2,2,1,2,2,2,1,1,1,3,2,1,1,3,3,0,3,2,2,0,2,1,1,2,1,3,4,1,1,1,2,1,2,1,1,3,1,2,0,1,3,1,4,1,3,3,1,1,4,3,8,2,3,1,2,3,1,4,1,0,1,2,0,3,1,4,2,3,2,2,2,2,2,1,1,1,0,2,1,4,3,6,0,3,1,2,2,0,3,4,3,2,1,0,0,1,1,3,2,2,1,2,1,1,2,1,0,1,3,2,0,1,3,1,2,1,3,1,1,0,4,3,1,1,1,3,0,1,3,4,2,1,3,1,1,3,1,3,1,2,1,0,0,2,0,4,1,0,3,0,1,2,1,2,1,2,5,1,2,0,0,2,2,0,3,4,3,2,0,2,2,0,3,0,3,1,3,3,3,1,0,1,1,2,1,3,1,1,2,4,3,0,1,1,1,6,2,2,0,2,2,0,1,3,2,1,1,0,2,1,2,3,4,6,0,1,3,0,0,3,0,2,1,2,0,0,1,0,1,0,3,1,2,4,1,0,0,1,2,1,1,3,0,2,2,2,2,0,2,2,2,1,3,2,1,1,0,0,2,1,1,0,0,1,1,2,0,1,1,1,2,2,1,4,0,3,2,1,2,4,1,1,0,2,1,2,0,1,2,0,1,4,4,0,3,2,1,2,3,0,2,3,2,2,1,2,5,2,1,0,0,1,3,2,0,5,1,2,0,2,1,2,3,2,1,2,0,1,0,1,3,1,1,2,3,3,1,3,2,1,3,2,4,2,2,1,0,2,5,1,1,2,2,3,2,2,0,3,2,1,0,2,0,2,0,0,1,4,1,2,0,0,1,1,1,2,3,1,1,2,3,3,2,1,1,2,4,0,2,2,0,4,2,4,1,4,1,2,1,2,2,4,3,2,1,2,1,1,2,0,0,3,1,0,2,2,1,0,0,0,1,3,1,3,1,1,1,0,3,0,4,2,0,1,0,1,1,2,1,3,1,3,2,1,1,1,1,1,0,0,1,2,1,0,2,0,2,4,2,0,2,2,0,3,3,2,2,0,3,1,1,1,1,0,0,2,2,2,0,3,1,2,2,1,0,1,5,0,2,4,3,0,3,2,1,3,4,1,2,1,3,0,0,2,0,4,0,3,0,1,0,0,1,0,4,5,0,3,3,1,1,1,1,0,1,1,0,2,4,0,2,1,2,1,0,1,2,3,0,2,1,3,1,2,3,0,2,2,0,1,3,3,3,3,0,1,1,0,3,2,1,1,1,0,3,3,2,3,0,1,2,4,1,1,2,1,0,2,1,0,2,1,1,1,0,2,3,0,2,0,3,2,1,0,2,1,2,3,2,2,3,1,5,0,1,2,2,0,1,2,0,2,1,1,1,2,3,3,0,1,1,1,0,3,1,3,0,3,3,0,2,1,2,2,1,1,7,2,4,2,1,2,0,1,1,0,1,0,1,0,1,1,0,2,5,0,2,1,2,0,3,0,1,3,2,1,1,1,3,1,3,2,3,2,0,0,2,1,4,1,1,0,3,2,4,1,2,1,1,3,2,2,1,3,1,0,1,1,1,4,1,1,3,0,1,1,3,2,0,0,2,2,2,4,2,1,1,2,1,2,2,0,1,2,3,2,2,2,2,5,2,3,0,3,3,1,1,0,3,3,0,2,3,0,2,4,3,0,2,1,0,2,1,6,2,1,1,1,2,1,0,3,1,4,2,3,1,1,2,1,3,2,1,2,3,1,5,1,2,3,2,1,0,2,1,2,0,1,2,3,2,2,2,0,2,0,3,2,3,0,0,2,2,2,1,1,6,2,3,0,2,3,2,1,3,1,1,1,0,1,0,1,0,2,0,0,1,3,5,1,1,2,0,2,6,1,5,2,2,0,4,0,2,0,1,2,2,2,1,3,2,1,3,2,2,1,0,3,2,0,1,3,3,2,2,3,1,3,1,2,1,4,1,2,0,1,3,1,1,1,0,1,2,0,1,1,0,2,1,1,3,1,3,0,2,0,2,2,0,0,2,0,0,3,3,0,1,3,3,2,0,2,0,2,5,1,3,1,1,1,0,2,0,0,0,1,5,1,1,1,1,1,2,0,1,1,0,2,1,0,3,1,2,3,1,3,0,0,1,1,1,1,1,2,3,2,1,1,2,5,1,5,2,4,0,1,1,2,1,1,0,1,0,1,1,1,2,1,3,2,1,0,1,3,0,3,4,2,1,0,2,4,1,3,1,0,1,1,0,1,0,0,2,0,2,2,1,3,4,3,2,1,0,2,1,1,1,2,2,3,1,1,3,4,0,2,1,6,3,1,0,1,1,1,0,1,2,4,3,1,1,2,1,0,5,1,0,5,1,0,4,3,0,2,1,0,1,2,0,3,1,4,0,0,2,2,2,2,3,4,1,1,1,3,1,1,1,2,1,2,0,3,1,0,0,0,2,1,2,2,2,1,0,1,0,2,3,2,1,0,1,2,1,0,0,1,0,0,0,2,1,1,2,1,2,2,3,1,0,0,1,0,0,1,0,1,1,1,0,3,0,1,0,0,0,2,1,3,1,0,1,1,0,3,1,0,6,2,2,1,0,1,2,2,1,0,0,1,2,3,2,4,2,1,0,2,1,2,1,0,2,0,0,0,3,0,0,2,1,1,0,1,2,1,0,5,2,0,2,0,0,4,1,3,2,0,3,1,1,2,0,1,1,2,3,1,2,1,1,1,5,0,1,1,0,0,0,0,1,3,2,2,3,3,1,2,0,1,2,2,0,2,4,1,2,0,4,5,1,0,0,1,0,1,2,3,1,1,0,1,1,1,0,0,1,0,0,4,1,1,1,3,2,1,0,0,1,0,1,4,0,0,2,0,0,3,0,1,0,1,3,1,0,0,0,5,2,2,1,2,1,3,0,0,3,3,0,1,2,0,1,0,2,0,1,2,0,1,0,3,2,0,2,0,2,0,0,2,0,1,1,2,1,2,3,2,1,1,0,1,2,1,1,3,0,2,0,1,1,2,2,0,2,2,1,0,1,1,2,0,0,1,1,0,2,0,1,4,1,1,3,1,1,2,1,3,2,3,2,3,2,0,1,1,0,2,2,2,2,3,2,3,1,3,0,1,0,2,0,3,1,3,2,2,4,1,0,1,1,1,1,2,2,1,1,5,0,2,1,2,1,1,2,0,1,1,0,1,0,1,2,1,0,1,1,0,0,0,2,0,0,2,4,2,3,1,3,3,1,2,0,4,1,2,2,1,1,1,0,0,0,1,2,1,1,0,1,0,0,0,2,2,2,2,0,1,1,2,2,1,2,1,2,0,1,2,1,4,6,1,3,0,1,2,2,0,0,0,0,1,0,2,0,0,2,0,4,4,1,1,0,0,0,1,2,2,1,3,0,2,1,1,0,5,0,0,3,1,0,2,2,1,1,1,1,1,0,1,3,3,2,3,3,3,0,2,0,1,3,0,1,3,1,0,1,2,2,0,2,2,0,1,3,1,3,0,2,2,0,1,0,2,0,0,1,3,2,2,2,0,2,0,0,0,1,0,0,0,1,4,2,1,0,1,4,2,3,0,0,1,1,2,0,3,2,1,2,1,2,1,0,4,2,1,2,1,2,1,3,0,0,2,5,0,1,2,2,3,2,0,1,3,2,0,2,1,0,2,2,1,2,0,0,1,1,0,2,1,2,4,1,1,0,1,1,0,1,1,3,4,0,2,2,0,0,3,3,3,1,1,1,2,4,1,2,0,1,0,0,0,3,2,0,3,3,2,0,0,3,1,2,0,1,2,1,1,2,0,2,1,3,2,3,0,1,2,0,2,2,0,0,1,3,2,2,2,0,3,2,1,1,2,0,2,2,1,1,1,1,0,1,0,0,0,3,3,0,4,2,4,1,0,5,2,2,2,0,0,1,1,1,1,3,0,0,3,2,0,0,1,2,1,0,1,0,2,0,1,2,0,3,1,1,2,4,1,1,0,1,3,0,4,3,1,0,2,1,2,1,2,0,0,0,0,1,3,2,3,2,1,1,2,2,1,0,2,2,0,0,2,3,0,0,0,0,0,1,1,3,0,1,0,2,3,0,3,1,0,3,1,0,4,1,0,0,1,2,0,0,2,1,1,0,1,1,1,1,2,0,1,2,1,2,2,2,4,1,1,3,0,2,1,1,1,1,1,2,0,0,2,0,0,1,0,2,3,2,0,1,1,1,2,2,1,4,1,1,0,1,1,3,3,1,3,1,2,0,2,1,1,0,0,2,2,3,2,1,2,1,6,3,3,0,3,0,0,1,0,1,0,1,0,2,2,1,1,0,2,1,3,1,1,2,2,2,3,0,2,1,1,2,3,1,0,0,2,0,1,0,2,3,2,3,2,2,3,4,4,1,0,0,3,0,2,1,2,1,1,0,1,1,1,2,0,3,1,1,1,0,1,1,0,1,1,1,0,1,0,4,1,1,3,2,1,2,1,1,1,1,0,1,0,0,4,1,3,0,0,2,3,1,0,1,0,0,2,2,2,2,1,1,2,0,1,3,1,2,1,1,1,3,0,3,1,1,0,0,1,2,0,2,1,2,3,2,1,1,1,2,0,1,1,2,2,2,1,2,1,0,2,0,3,0,0,1,0,1,0,1,3,2,2,0,1,2,2,2,1,0,1,1,1,0,1,2,2,2,2,1,1,1,3,2,0,0,2,1,0,1,2,3,1,1,1,0,1,0,4,0,1,1,0,0,2,3,2,2,1,3,1,0,1,1,3,2,1,0,2,2,0,0,1,1,0,0,0,2,1,2,0,1,1,2,1,1,1,0,2,2,1,3,2,0,1,1,2,1,0,2,0,1,1,2,0,1,0,2,0,1,1,0,0,1,0,0,1,0,5,0,1,2,2,0,4,2,3,0,1,0,1,1,2,3,3,2,1,1,3,1,0,0,1,0,2,2,1,0,2,1,0,3,1,0,1,1,0,2,1,0,2,2,1,4,2,2,2,5,1,1,0,1,4,2,0,2,1,2,1,4,4,1,1,0,1,0,0,1,1,1,2,2,0,1,0,1,0,2,2,0,2,0,1,0,3,3,0,3,3,2,2,2,1,1,1,0,0,1,0,4,1,0,1,1,1,3,1,2,0,0,0,0,1,2,0,1,1,0,2,0,2,2,4,4,2,2,1,1,1,0,1,1,2,2,0,2,0,0,1,1,3,0,2,2,2,1,2,1,2,1,1,1,2,2,4,1,0,3,3,2,0,2,1,2,1,1,0,0,0,2,1,3,3,0,0,0,0,0,0,0,2,1,1,2,2,0,0,2,0,1,1,3,0,0,1,2,0,1,1,1,1,3,0,0,0,2,1,1,0,2,1,0,1,1,0,1,1,1,4,1,0,0,1,1,0,1,2,0,2,1,0,1,1,1,0,0,3,2,1,1,1,2,1,1,2,2,1,3,1,1,1,0,0,3,3,4,0,2,1,0,0,0,0,1,1,0,1,0,2,0,3,1,2,0,0,0,2,1,0,1,0,1,1,1,2,0,3,3,1,1,3,3,2,2,1,0,1,0,2,0,1,0,2,2,2,1,0,0,1,2,0,2,0,2,0,0,0,0,1,2,1,2,2,3,1,1,2,0,2,1,4,1,2,1,1,1,3,1,1,2,0,4,0,2,3,0,2,4,0,1,0,1,1,1,1,0,1,2,1,2,2,2,2,4,3,1,0,1,0,0,0,1,1,0,1,1,2,2,0,3,3,0,1,0,1,0,4,0,1,1,1,2,0,1,3,1,2,3,0,2,1,1,3,1,1,3,3,3,0,1,0,0,1,1,1,1,3,1,1,1,0,1,1,3,0,0,3,1,2,2,2,1,1,0,3,0,1,2,2,1,3,2,0,2,3,5,1,0,3,0,1,0,2,0,0,2,0,1,1,1,2,1,2,1,2,0,0,0,0,0,3,2,2,0,0,1,0,2,1,0,1,0,1,0,2,1,2,1,2,1,0,2,1,1,3,0,2,1,3,0,3,1,0,0,2,2,1,0,0,2,0,0,1,1,2,1,0,0,0,1,0,1,2,1,2,1,2,2,2,3,2,1,1,0,1,2,1,1,1,0,1,0,2,2,2,2,2,0,1,3,0,2,1,0,1,0,0,1,0,0,0,1,1,2,1,0,0,1,0,0,2,1,0,2,2,1,1,1,0,0,0,4,1,0,1,1,1,0,0,1,2,0,3,3,0,2,1,1,2,4,1,2,2,1,1,0,0,1,1,2,1,0,1,1,0,2,1,1,2,1,1,2],\"v7\":1,\"n7\":8,\"v8\":[3,1,1,1,0,0,4,1,1,3,0,0,1,2,3,1,2,0,1,2,1,0,1,3,1,1,2,1,2,1,2,2,2,3,0,1,1,0,1,0,0,2,1,2,0,1,2,1,2,1,1,1,0,3,1,1,0,1,2,2,2,1,2,1,0,2,1,0,0,1,0,1,1,2,2,1,2,1,1,1,1,0,0,2,2,1,1,3,0,1,0,4,0,0,3,1,2,2,0,1,3,2,1,1,1,4,0,3,1,1,3,2,1,4,4,1,0,2,0,0,2,1,1,1,3,1,0,3,2,2,0,1,1,0,1,0,1,1,0,1,2,1,1,0,2,0,2,1,0,0,0,2,3,4,1,2,1,2,1,2,1,0,2,1,1,1,2,3,2,1,0,0,2,2,1,1,5,0,2,0,1,1,0,0,2,0,3,0,1,2,1,0,1,3,2,0,0,1,1,1,0,1,2,0,2,2,1,0,2,1,2,0,2,2,1,1,1,1,1,0,0,0,2,2,0,1,0,0,0,0,1,2,0,3,1,2,1,2,2,2,1,0,2,0,0,0,2,1,0,2,0,2,0,1,1,1,2,1,1,0,1,1,2,0,1,2,1,0,1,1,0,0,1,0,1,2,0,0,1,2,2,0,5,0,2,0,1,2,1,0,0,2,4,0,0,2,1,2,2,0,0,1,2,1,1,1,0,1,0,0,1,2,0,3,1,3,1,2,1,1,2,1,0,0,1,2,1,1,2,0,0,0,1,0,0,0,1,1,0,1,0,1,4,1,0,0,1,4,0,0,0,3,0,1,0,2,0,1,1,3,0,0,1,1,3,0,0,1,0,2,1,1,0,1,1,2,0,0,1,2,3,2,1,2,2,3,2,2,0,1,0,2,1,0,2,0,2,1,0,0,0,0,1,2,1,1,1,0,2,0,0,0,1,0,2,2,1,1,2,2,1,1,2,1,1,3,1,3,2,0,0,1,1,3,2,2,1,1,0,0,0,2,0,2,3,0,0,2,0,1,1,0,1,1,2,0,1,2,0,1,1,0,0,0,1,0,2],\"v9\":1,\"n9\":7,\"p10\":26760,\"v10\":[2,3,0,1,2,1,1,2,1,0,1,1,0,0,1,2,2,1,0,3,2,0,1,0,1,0,1,1,1,2,2,0,1,1,0,1,0,1,0,0,0,2,2,0,1,3,0,0,2,2,0,0,1,0,1,2,1,1,0,0,0,3,0,0,1,2,2,0,2,2,1,1,1,2,2,1,2,1,0,1,1,1,0,0,2,2,0,1,2,0,1,0,0,0,1,1,1,0,0,2,0,1,1,0,3,3,4,2,3,0,0,1,0,0,1,0,2,0,1,2,1,2,1,0,2,2,1,1,2,0,2,2,0,2,2,0,0,4,0,1,1,2,2,0,2,1,1,1,1,1,0,1,0,1,2,1,1,3,2,0,0,3,1,0,1,0,2,3,1,4,1,0,0,1,1,0,0,0,1,1,1,1,0,0,1,1,2,0,1,0,0,0,0,3,1,1,4,0,1,2,0,1,4,0,1,0,0,2,0,0,1,1,1,2,1,1,0,0,1,2,0,2,0,0,0,0,4,1,0,0,1,0,3,0,1,0,0,1,0,0,4,5,1,1,0,2,0,0,4,0,0,1,3,2,0,2,0,0,1,0,0,0,2,2,3,1,0,1,0,0,2,1,0,3,3,0,2,1,0,1,1,1,2,1,3,0,0,0,2,0,2,1,1,2,0,1,1,1,1,0,1,0,1,1,1,1,3,0,4,1,0,0,2,1,0,2,1,1,1,0,1,2,0,1,2,0,2,0,0,0,1,1,0,2,0,0,0,2,5,2,0,1,1,0,0,0,3,0,0,0,3,1,0,0,0,0,2,1,0,2,1,0,2,0,2,1,0,0,0,0,0,1,0,0,0,3,1,1,2,1,2,2,2,2,2,1,0,1,1,1,2,0,1,1,0,2,1,2,0,1,0,0,3,3,0,0,0,1,0,2,3,0,1,0,2,1,0,0,0,0,0,0,1,1,0,2,1,0,2,0,1,0,1,4,2,0,3,1,1,3,0,0,0,1,1,0,1,2,2,0,1,1,0,2,1,3,0,1,0,0,0,1,1,1,1,2,1,0,2,0,1,0,1,0,2,1,0,1,2,1,2,1,1,0,0,0,1,0,1,3,0,1,4,0,1,1,0,2,4,0,0,1,2,0,1,2,0,2,1,0,2,1,1,1,1,0,1,0,1,0,1,1,1,2,1,0,0,0,0,1,2,2,1,0,0,0,0,2,0,2,0,2,1,0,1,2,0,0,0,1,0,1,0,1,0,2,1,0,0,1,2,0,1,0,1,0,1,2,2,0,0,1,1,1,0,1,1,0,2,0,0,1,1,2,1,3,0,1,1,0,3,2,0,0,0,0,0,2,2,0,0,1,0,0,0,0,0,1,1,2,1,1,0,0,0,1,0,1,0,1,1,0,0,0,2,0,0,1,0,0,2,0,0,2,1,0,0,3,1,0,1,0,0,1,0,2,2,1,0,0,2,0,0,0,2,0,1,0,1,1,0,0,3,3,1,1,1,1,0,1,1,0,3,0,0,1,0,1,1,1,2,1,0,0,1,0,1,2,0,1,2,0,0,1,1,1,0,1,2,1,0,0,1,1,2,0,1,0,1,0,0,0,0,0,2,1,1,0,2,0,0,1,1,0,3,2,3,3,1,1,2,2,2,2,0,1,0,0,1,1,1,1,0,1,0,1,2,2,1,2,0,0,1,0,3,0,2,1,2,0,2,1,1,1,0,1,1,2,2,3,1,3,1,1,0,0,2,1,1,3,2,0,0,0,0,2,0,2,0,1,2,1,1,1,2,2,0,1,0,2,1,0,3,1,1,1,1,2,0,1,1,1,0,0,2,2,2,2,2,0,0,3,0,3,0,0,1,0,1,1,1,0,1,3,1,1,1,2,0,0,1,1,1,0,0,0,2,1,2,2,2,1,0,1,2,0,0,1,1,0,0,1,0,0,1,0,1,0,1,0,1,1,1,1,1,0,1,1,0,1,0,1,0,1,0,1,0,0,0,2,0,0,0,0,1,0,2,0,1,0,1,0,0,0,1,1,1,0,1,0,1,3,1,2,0,2,1,2,0,0,0,0,0,1,3,1,2,0,2,0,2,0,0,1,1,1,1,0,1,1,0,1,0,1,2,2,1,0,2,3,0,1,0,2,1,2,1,1,0,1,0,0,0,3,2,0,1,0,2,1,0,1,1,3,4,2,1,0,0,1,2,3],\"v11\":1,\"n11\":8,\"p12\":27751,\"v12\":[1,0,2,3,0,1,0,1,1,1,0,1,0,0,1,0,1,2,1,0,0,2,1,2,2,1,0,0,2,0,0,1,0,1,2,0,0,1,1,0,3,0,1,0,1,1,2,0,2,0,0,0,2,0,2,0,0,0,6,1,0,2,0,1,0,1,1,0,0,0,0,1,5,1,1,0,2,0,0,2,1,1,0,1,0,1,1,0,1,1,1,1,0,0,2,0,2,0,0,0,0,0,1,2,1,1,1,0,1,0,0,2,0,0,0,1,1,2,0,0,0,0,0,0,2,1,3,3,0,0,0,2,0,2,1,1,1,1,1,2,1,0,0,2,1,0,1,1,2,1,0,1,1,1,1,0,0,1,1,1,1,0,0,2,0,2,1,0,0,3,0,0,1,0,0,0,0,1,3,0,2,0,0,1,1,1,0,3,1,0,1,1,3,1,1,0,3,1,0,1,0,1,0,0,1,1,1,0,0,0,0,0,0,1,1,1,0,0,2,1,2,1,1,2,1,0,1,2,0,2,0,0,2,0,0,2,3,0,2,0,0,0,0,1,0,1,0,1,0,1,1,1,0,0,0,1,2,1,0,0,0,0,0,1,0,0,2,0,0,2,0,0,0,1,2,1,1,1,1,1,0,1,1,0,0,2,0,0,3,1,1,0,2,0,1,3,2,2,2,0,1,2,1,1,1,1,1,0,1,0,2,0,1,3,1,0,0,0,0,1,0,1,0,0,1,2,0,2,2,2,1,0,2,0,0,0,1,2,1,0,0,0,0,3,0,0,2,1,0,1,0,1,1,1,1,0,0,1,1,0,1,0,2,1,1,1,0,1,2,1,0,1,1,0,0,2,2,0,2,1,0,1,0,2,0,0,1,0,1,0,0,0,1,0,3,1,2,0,1,1,0,1,1,0,0,0,2,0,3,1,1,3,0,2,0,0,2,1,0,1,2,2,1,0,0,2,2,1,1,0,0,4,4,0,1,0,0,1,0,1,0,0,1,0,1,4,1,1,0,1,1,0,0,1,1,0,1,1,0,0,2,3,0,0,2,0,2,0,2,1,2,0,2,0,0,0,0,0,0,2,0,0,3,0,4,2,1,1,0,1,2,3,2,2,1,0,0,0,1,2,1,3,1,1,0,0,1,0,2,2,2,0,3,0,3,1,1,1,0,0,2,2,0,0,1,1,1,1,0,0,1,0,1,0,1,0,0,1,1,1,0,2,1,0,0,2,0,1,2,0,0,3,2,1,1,0,0,0,1,0,2,1,0,1,1,0,1,0,0,0,0,0,0,0,1,1,1,1,1,0,1,2,1,2,0,1,1,0,1,2,2,0,1,1,1,0,0,0,1,1,2,3,1,1,4,0,0,0,0,2,2,1,1,0,1,0,1,1,0,0,2,1,1,2,0,1,1,1,0,1,1,1,0,1,0,0,0,2,1,2,1,1,1,0,3,0,3,1,0,1,1,0,1,0,0,1,5,0,1,0,0,0,0,0,0,1,0,1,1,0,2,3,1,0,2,1,1,0,0,3,3,0,1,1,0,2,1,1,0,1,1,0,1,0,1,1,1,0,2,0,2,1,1,4,1,1,0,0,1,2,1,1,0,1,1,1,0,0,2,1],\"p13\":28481,\"v13\":[2,2,0,0,1,1,1,0,0],\"v14\":1,\"n14\":7,\"p15\":28500,\"v15\":[2,0,2,1,2,0,3,0,0,1,1,1,0,0,0,0,0,0,2,0,1,0,1,1,4,1,1,0,2,1,1,1,2,1,0,1,0,0,1,2,0,3,0,0,0,0,0,1,1,0,1,0,1,2,0,2,1,0,0,0,0,1,0,1,2,0,0,2,1,0,1,1,1,0,1,0,0,2,1,0,0,2,1,0,0,0,0,0,0,0,3,1,2,0,1,1,0,1,0,0],\"v16\":1,\"n16\":8,\"p17\":28612,\"v17\":[1,0,1,1,2,0,0,2,2,1,0,1,0,1,1,0,2,1,2,1,1,1,1,3,2,1,0,0,1,0,2,0,0,2,0,1,1,0,1,4,0,1,1,2,3,1,0,3,0,1,1,2,2,2,1,2,1,2,2,1,2,1,0,1,0,1,0,0,2,1,1,1,2,0,0,1,0,0,0,0,0,2,2,0,0,0,0,1,0,0,1,1,1,1,1,0,0,2,0,0,1,1,1,2,0,2,1,0,0,1,0,0,1,2,0,0,0,1,2,0,0,1,1,2,0,0,2,1,2,1,0,0,3,2,2,0,1,2,0,3,2,3,1,1,2,1,0,1,0,2,1,0,0,0,1,0,2,0,0,1,0,0,1,0,1,1,2,0,1,0,0,2,0,0,0,0,2,1,0,0,0,1,1,0,4,1,3,2,1,1,0,0,0,0,0,0,0,1,0,1,2,0,1,1,2,0,0,0,0,0,1,0,0,0,1,2,0,0,1,0,0,3,1,0,2,0,1,2,0,0,0,0,1,2,2,1,1,2,0,0,1,1,3,2,0,1,0,1,1,0,0,1,1,0,0,0,1,1,1,1,1,2,1,0,0,0,0,3,0,0,0,0,0,1,0,3,1,0,1,0,0,1,0,1,2,0,0,1,2,1,2,1,2,0,0,0,0,0,0,1,1,1,1,0,0,1,0,0,2,2,1,1,0,1,3,0,0,1,0,1,0,0,0,2,0,1,0,0,0,0,0,2,1,2,2,0,1,1,0,2,1,1,0,0,0,2,1,0,0,0,2,1,1,1,0,4,0,3,1,1,1,2,0,0,0,2,1,1,2,0,0,0,1,0,1,0,0,1,1,1,0,2,1,0,0,1,0,1,2,1,1,0,1,3,2,1,1,1,0,0,3,1,0,0,1,0,1,0,1,1,3,0,0,1,0,0,1,1,1,0,0,1,1,4,2,0,2,1,2,2,3,1,2,0,1,2,1,4,1,0,2,1,2,0,0,1,1,0,0,0,0,0,0,0,1,3,0,2,0,0,0,0,0,1,0,0,1,0,1,1,0,1,1,0,0,2,0,0,0,0,0,1,0,1,0,1,0,1,1,1,2,1,0,0,2,0,0,1,0,0,1,2,0,0,2,2,1,0,0,0,1,2,2,3,2,0,2,0,2,1,1,0,1,2,1,2,0,3,0,2,3,3,1,2,4,2,0,1,0,1,0,1,0,0,2,1,0,0,1,1,1,1,0,0,1,0,2,0,0,0,0,1,1,0,1,0,1,0,0,0,1,0,1,2,0,0,0,0,1,0,1,0,0,1,1,2,0,0,2,0,0,0,0,0,1,0,0,0,1,3,1,3,0,1,1,0,1,1,0,2,0,1,1,0,0,1,0,0,1,0,0,3,2,1,1,0,0,1,0,1,0,0,1,0,0,1,3,0,0,1,0,1,2,0,1,1,1,0,1,2,1,1,0,0,2,3,0,0,2,2,1,0,0,1,2,0,0,1,1,1,2,0,2,0,0,0,1,1,1,1,3,2,0,0,3,1,0,0,0,2,0,0,0,1,2,0,0,0,0,1,0,1,0,2,1,0,1,0,1,0,1,2,0,1,2,0,0,0,0,1,1,0,1,0,1,1,0,0,0,2,1,0,0,2,0,1,1,0,0,1,1,0,1,2,0,1,0,1,2,2,2,1,0,0,0,1,2,0,1,0,1,0,0,1,1,0,2,0,0,1,0,2,2,2,1,0,0,2,0,0,0,0,1,0,0,0,1,2,1,0,2,0,1,1,0,2,2,1,0,0,0,0,1,2,2,0,2,1,0,0,2,0,1,0,1,2,1,1,2,0,0,1,0,1,1,0,0,0,0,0,2,0,2,0,1,0,0,1,0,1,2,1,1,1,2,2,0,0,0,0,0,1,1,1,1,0,0,1,0,1,1,0,1,0,1,2,2,0,0,1,0,1,0,2,1,1,0,2,0,2,0,0,3,0,1,1,0,1,0,0,1,1,0,0,2,0,3,0,0,1,0,1,0,0,0,0,1,0,0,1,2,0,0,0,1,0,1,0,0,2,1,0,1,1,0,1,1,1,1,2,0,1,2,0,0,0,2,2,1,3,2,1,2,1,1,0,1,0,0,1,0,0,3,1,1,1,0,0,0,0,0,1,0,1,1,1,0,0,1,0,0,0,1,1,0,0,0,2,3,2,0,0,0,1,0,0,0,0,0,1,1,1,0,1,1,1,0,0,1,1,1,0,1,1,1,1,0,0,2,2,1,0,0,2,1,1,0,1,0,3,2,2,1,0,1,0,1,2,1,2,0,1,0,0,0,0,0,0,0,1,0,2,0,2,0,1,0,1,1,0,2,0,1,0,0,0,1,0,1,1,1,0,0,0,1,1,2,0,0,0,0,0,0,1,2,1,3,0,0,0,0,0,1,0,2,2,1,1,1,1,1,0,0,1,0,0,1,0,0,0,0,1,1,3,1,3,0,2,1,1,1,1,1,2,0,0,1,2,2,0,0,0,1,1,0,1,0,1,1,1,2,0,0,1,0,0,1,0,1,0,2,1,1,1,0,2,0,0,1,0,0,0,0,0,0,0,1,1,1,0,2,1,0,0,1,0,1,0,1,0,1,0,1,0,0,2,2,3,2,2,2,0,1,2,1,1,0,0,1,1,1,0,1,0,0,1,0,0,1,0,0,3,0,1,1,0,0,1,2,0,0,1,0,2,0,0,1,2,2,0,1,1,1,2,0,1,1,0,0,0,1,0,0,0,0,1,0,1,0,0,1,0,0,2,0,2,0,1,1,0,0,0,1,1,1,0,2,0,1,3,1,1,0,1,0,0,1,1,0,1,0,0,2,2,1,2,1,1,0,0,2,1,0,0,1,2,1,1,0,1,0,1,0,1,0,0,0,1,0,0,1,0,0,0,1,1,0,0,1,1,1,1,0,0,1,0,1,1,1,0,0,3,0,0,2,1,1,0,0,1,0,1,1,0,1,1,0,2,1,0,1,0,0,3,1,1,1,0,0,2,0,0,0,0,1,0,0,1,1,0,1,1,2,0,4,3,0,0,1,0,2,0,0,0,1,1,0,0,0,0,1,0,0,1,0,1,0,1,1,7912]}},{\"_typename\":\"TLatex\",\"fUniqueID\":0,\"fBits\":16393,\"fName\":\"\",\"fTitle\":\"#bf{CMS Open Data}\",\"fTextAngle\":0,\"fTextSize\":0.04,\"fTextAlign\":11,\"fTextColor\":1,\"fTextFont\":42,\"fX\":0.1,\"fY\":0.92,\"fLineColor\":1,\"fLineStyle\":1,\"fLineWidth\":2,\"fLimitFactorSize\":3,\"fOriginSize\":0.04},{\"_typename\":\"TLatex\",\"fUniqueID\":0,\"fBits\":16393,\"fName\":\"\",\"fTitle\":\"#sqrt{s} = 8 TeV, L_{int} = 11.6 fb^{-1}\",\"fTextAngle\":0,\"fTextSize\":0.03,\"fTextAlign\":11,\"fTextColor\":1,\"fTextFont\":42,\"fX\":0.5,\"fY\":0.92,\"fLineColor\":1,\"fLineStyle\":1,\"fLineWidth\":2,\"fLimitFactorSize\":3,\"fOriginSize\":0.04},{\"_typename\":\"TStyle\",\"fUniqueID\":0,\"fBits\":0,\"fName\":\"Modern\",\"fTitle\":\"Modern Style\",\"fLineColor\":1,\"fLineStyle\":1,\"fLineWidth\":1,\"fFillColor\":19,\"fFillStyle\":1001,\"fMarkerColor\":1,\"fMarkerStyle\":1,\"fMarkerSize\":1,\"fTextAngle\":0,\"fTextSize\":0.05,\"fTextAlign\":11,\"fTextColor\":1,\"fTextFont\":42,\"fXaxis\":{\"_typename\":\"TAttAxis\",\"fNdivisions\":510,\"fAxisColor\":1,\"fLabelColor\":1,\"fLabelFont\":42,\"fLabelOffset\":0.005,\"fLabelSize\":0.035,\"fTickLength\":0.03,\"fTitleOffset\":1,\"fTitleSize\":0.035,\"fTitleColor\":1,\"fTitleFont\":42},\"fYaxis\":{\"_typename\":\"TAttAxis\",\"fNdivisions\":510,\"fAxisColor\":1,\"fLabelColor\":1,\"fLabelFont\":42,\"fLabelOffset\":0.005,\"fLabelSize\":0.035,\"fTickLength\":0.03,\"fTitleOffset\":0,\"fTitleSize\":0.035,\"fTitleColor\":1,\"fTitleFont\":42},\"fZaxis\":{\"_typename\":\"TAttAxis\",\"fNdivisions\":510,\"fAxisColor\":1,\"fLabelColor\":1,\"fLabelFont\":42,\"fLabelOffset\":0.005,\"fLabelSize\":0.035,\"fTickLength\":0.03,\"fTitleOffset\":1,\"fTitleSize\":0.035,\"fTitleColor\":1,\"fTitleFont\":42},\"fBarWidth\":1,\"fBarOffset\":0,\"fColorModelPS\":0,\"fDrawBorder\":0,\"fOptLogx\":0,\"fOptLogy\":0,\"fOptLogz\":0,\"fOptDate\":0,\"fOptStat\":0,\"fOptTitle\":1,\"fOptFile\":0,\"fOptFit\":0,\"fShowEventStatus\":0,\"fShowEditor\":0,\"fShowToolBar\":0,\"fNumberContours\":20,\"fAttDate\":{\"_typename\":\"TAttText\",\"fTextAngle\":0,\"fTextSize\":0.025,\"fTextAlign\":11,\"fTextColor\":1,\"fTextFont\":62},\"fDateX\":0.01,\"fDateY\":0.01,\"fEndErrorSize\":2,\"fErrorX\":0.5,\"fFuncColor\":2,\"fFuncStyle\":1,\"fFuncWidth\":2,\"fGridColor\":0,\"fGridStyle\":3,\"fGridWidth\":1,\"fLegendBorderSize\":1,\"fLegendFillColor\":0,\"fLegendFont\":42,\"fLegendTextSize\":0,\"fHatchesLineWidth\":1,\"fHatchesSpacing\":1,\"fFrameFillColor\":0,\"fFrameLineColor\":1,\"fFrameFillStyle\":1001,\"fFrameLineStyle\":1,\"fFrameLineWidth\":1,\"fFrameBorderSize\":1,\"fFrameBorderMode\":0,\"fHistFillColor\":0,\"fHistLineColor\":602,\"fHistFillStyle\":1001,\"fHistLineStyle\":1,\"fHistLineWidth\":1,\"fHistMinimumZero\":false,\"fHistTopMargin\":0.05,\"fCanvasPreferGL\":false,\"fCanvasColor\":0,\"fCanvasBorderSize\":2,\"fCanvasBorderMode\":0,\"fCanvasDefH\":500,\"fCanvasDefW\":700,\"fCanvasDefX\":10,\"fCanvasDefY\":10,\"fPadColor\":0,\"fPadBorderSize\":2,\"fPadBorderMode\":0,\"fPadBottomMargin\":0.1,\"fPadTopMargin\":0.1,\"fPadLeftMargin\":0.1,\"fPadRightMargin\":0.1,\"fPadGridX\":false,\"fPadGridY\":false,\"fPadTickX\":0,\"fPadTickY\":0,\"fPaperSizeX\":20,\"fPaperSizeY\":26,\"fScreenFactor\":1,\"fStatColor\":0,\"fStatTextColor\":1,\"fStatBorderSize\":1,\"fStatFont\":42,\"fStatFontSize\":0,\"fStatStyle\":1001,\"fStatFormat\":\"6.4g\",\"fStatX\":0.98,\"fStatY\":0.935,\"fStatW\":0.2,\"fStatH\":0.16,\"fStripDecimals\":true,\"fTitleAlign\":23,\"fTitleColor\":0,\"fTitleTextColor\":1,\"fTitleBorderSize\":0,\"fTitleFont\":42,\"fTitleFontSize\":0.05,\"fTitleStyle\":0,\"fTitleX\":0.5,\"fTitleY\":0.995,\"fTitleW\":0,\"fTitleH\":0,\"fLegoInnerR\":0.5,\"fLineStyles\":[\"\",\" \",\" 12 12\",\" 4 8\",\" 12 16 4 16\",\" 20 12 4 12\",\" 20 12 4 12 4 12 4 12\",\" 20 20\",\" 20 12 4 12 4 12\",\" 80 20\",\" 80 40 4 40\",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \"],\"fHeaderPS\":\"\",\"fTitlePS\":\"\",\"fFitFormat\":\"5.4g\",\"fPaintTextFormat\":\"g\",\"fLineScalePS\":3,\"fJoinLinePS\":0,\"fCapLinePS\":0,\"fTimeOffset\":788918400,\"fImageScaling\":1}],\"opt\":[\"\",\"\",\"\",\"\",\"\"]},\"fExecs\":null,\"fName\":\"c\",\"fTitle\":\"\",\"fNumPaletteColor\":0,\"fNextPaletteColor\":0,\"fDISPLAY\":\"$DISPLAY\",\"fDoubleBuffer\":0,\"fRetained\":true,\"fXsizeUser\":0,\"fYsizeUser\":0,\"fXsizeReal\":20,\"fYsizeReal\":17.5,\"fWindowTopX\":0,\"fWindowTopY\":0,\"fWindowWidth\":0,\"fWindowHeight\":0,\"fCw\":796,\"fCh\":672,\"fCatt\":{\"_typename\":\"TAttCanvas\",\"fXBetween\":2,\"fYBetween\":2,\"fTitleFromTop\":1.2,\"fXdate\":0.2,\"fYdate\":0.3,\"fAdate\":1},\"kMoveOpaque\":true,\"kResizeOpaque\":true,\"fHighLightColor\":2,\"fBatch\":true,\"kShowEventStatus\":false,\"kAutoExec\":true,\"kMenuBar\":true});\n", " Core.settings.HandleKeys = false;\n", " Core.draw(\"root_plot_1669027746757\", obj, \"\");\n", "}\n", "\n", "function script_load_root_plot_1669027746757(src, on_error) {\n", " let script = document.createElement('script');\n", " script.src = src;\n", " script.onload = function() { display_root_plot_1669027746757(JSROOT); };\n", " script.onerror = function() { script.remove(); on_error(); };\n", " document.head.appendChild(script);\n", "}\n", "\n", "if (typeof requirejs !== 'undefined') {\n", "\n", " // We are in jupyter notebooks, use require.js which should be configured already\n", " requirejs.config({\n", " paths: { 'JSRootCore' : [ 'scripts/JSRoot.core', 'https://root.cern/js/6.1.1/scripts/JSRoot.core.min', 'https://jsroot.gsi.de/6.1.1/scripts/JSRoot.core.min' ] }\n", " })(['JSRootCore'], function(Core) {\n", " display_root_plot_1669027746757(Core);\n", " });\n", "\n", "} else if (typeof JSROOT !== 'undefined') {\n", "\n", " // JSROOT already loaded, just use it\n", " display_root_plot_1669027746757(JSROOT);\n", "\n", "} else {\n", "\n", " // We are in jupyterlab without require.js, directly loading jsroot\n", " // Jupyterlab might be installed in a different base_url so we need to know it.\n", " try {\n", " var base_url = JSON.parse(document.getElementById('jupyter-config-data').innerHTML).baseUrl;\n", " } catch(_) {\n", " var base_url = '/';\n", " }\n", "\n", " // Try loading a local version of requirejs and fallback to cdn if not possible.\n", " script_load_root_plot_1669027746757(base_url + 'static/scripts/JSRoot.core.js', function(){\n", " console.error('Fail to load JSROOT locally, please check your jupyter_notebook_config.py file');\n", " script_load_root_plot_1669027746757('https://root.cern/js/6.1.1/scripts/JSRoot.core.min.js', function(){\n", " document.getElementById(\"root_plot_1669027746757\").innerHTML = \"Failed to load JSROOT\";\n", " });\n", " });\n", "}\n", "\n", "</script>\n" ], "text/plain": [ "<IPython.core.display.HTML object>" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%jsroot on\n", "c.Draw()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "spark.stop()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.12" }, "sparkconnect": { "bundled_options": [], "list_of_options": [ { "name": "spark.executor.instances", "value": "4" }, { "name": "spark.executor.cores", "value": "4" } ] } }, "nbformat": 4, "nbformat_minor": 2 }