Skip to content

Instantly share code, notes, and snippets.

@bill-mccloskey
Created April 7, 2016 00:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bill-mccloskey/65b1115556dbbacdf020f749e4b3dd98 to your computer and use it in GitHub Desktop.
Save bill-mccloskey/65b1115556dbbacdf020f749e4b3dd98 to your computer and use it in GitHub Desktop.
IPC Message Size Analysis
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false,
"scrolled": true
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/hadoop/anaconda2/lib/python2.7/site-packages/matplotlib/font_manager.py:273: UserWarning: Matplotlib is building the font cache using fc-list. This may take a moment.\n",
" warnings.warn('Matplotlib is building the font cache using fc-list. This may take a moment.')\n",
"WARNING: "
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Unable to parse whitelist (/home/hadoop/anaconda2/lib/python2.7/site-packages/moztelemetry/bucket-whitelist.json). Assuming all histograms are acceptable.\n",
"Populating the interactive namespace from numpy and matplotlib\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"pylab import has clobbered these variables: ['Annotation', 'Figure']\n",
"`%matplotlib` prevents importing * from pylab and numpy\n"
]
}
],
"source": [
"import ujson as json\n",
"import matplotlib.pyplot as plt\n",
"import pandas as pd\n",
"import numpy as np\n",
"import plotly.plotly as py\n",
"from plotly.graph_objs import *\n",
"\n",
"from moztelemetry import get_pings, get_pings_properties, get_one_ping_per_client, get_clients_history, get_records\n",
"\n",
"%pylab inline"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"pings = get_pings(sc, app=\"Firefox\", channel=\"nightly\", build_id=(\"20160401000000\", \"20160406999999\"), fraction=0.1)"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"filtered = pings.filter(lambda p: p[\"payload\"].get(\"keyedHistograms\", {}).get(\"IPC_MESSAGE_SIZE\", {}))"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"{u'PContent::Msg_RegisterChrome': {u'bucket_count': 50,\n",
" u'histogram_type': 0,\n",
" u'range': [1, 8000000],\n",
" u'sum': 16924,\n",
" u'values': {u'12994': 1, u'17915': 0, u'9425': 0}},\n",
" u'PHttpChannel::Msg_OnStartRequest': {u'bucket_count': 50,\n",
" u'histogram_type': 0,\n",
" u'range': [1, 8000000],\n",
" u'sum': 376432,\n",
" u'values': {u'12994': 20, u'17915': 0, u'6836': 0, u'9425': 9}},\n",
" u'PHttpChannel::Msg_OnTransportAndData': {u'bucket_count': 50,\n",
" u'histogram_type': 0,\n",
" u'range': [1, 8000000],\n",
" u'sum': 1002436,\n",
" u'values': {u'12994': 31,\n",
" u'17915': 4,\n",
" u'24699': 3,\n",
" u'46947': 3,\n",
" u'4958': 0,\n",
" u'64726': 1,\n",
" u'6836': 9,\n",
" u'89237': 0,\n",
" u'9425': 7}}}"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"filtered.first()[\"payload\"][\"keyedHistograms\"][\"IPC_MESSAGE_SIZE\"]"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"def getData(p):\n",
" hists = p[\"payload\"].get(\"keyedHistograms\", {}).get(\"IPC_MESSAGE_SIZE\", {})\n",
" r = {}\n",
" for name, v in hists.items():\n",
" maximum = max([ int(k) for k in v[\"values\"].keys() ])\n",
" r[name] = maximum\n",
" return r\n",
"\n",
"def combineResults(x, y):\n",
" keys = set(x.keys()) | set(y.keys())\n",
" r = {}\n",
" for k in keys:\n",
" r[k] = max(x.get(k, 0), y.get(k, 0))\n",
" return r\n",
"\n",
"maxes = filtered.map(getData).reduce(combineResults)"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"[(8000000, u'PStorage::Msg_LoadItem'),\n",
" (8000000, u'PContent::Msg_AsyncMessage'),\n",
" (8000000, u'PBrowser::Msg_AsyncMessage'),\n",
" (8000000, u'PBackgroundIDBTransaction::Msg_PBackgroundIDBRequestConstructor'),\n",
" (8000000, u'PBackgroundIDBRequest::Msg___delete__'),\n",
" (8000000, u'PBackgroundIDBCursor::Msg_Response'),\n",
" (5802597, u'PHttpChannel::Msg_OnTransportAndData'),\n",
" (4208766, u'PStorage::Msg_OriginsHavingData'),\n",
" (4208766, u'PJavaScript::Msg_CallOrConstruct'),\n",
" (3052721, u'PWebSocket::Msg_OnMessageAvailable'),\n",
" (3052721, u'PContent::Msg_InvokeDragSession'),\n",
" (1164888, u'PContent::Msg_LoadAndRegisterSheet'),\n",
" (844922, u'PWebSocket::Msg_OnBinaryMessageAvailable'),\n",
" (844922, u'PPluginModule::Msg_PPluginInstanceConstructor'),\n",
" (844922, u'PContent::Msg_PreferenceUpdate'),\n",
" (612843, u'PCache::Msg_PCacheOpConstructor'),\n",
" (444510, u'PJavaScript::Msg_Set'),\n",
" (444510, u'PFTPChannel::Msg_OnDataAvailable'),\n",
" (322414, u'PLayerTransaction::Msg_Update'),\n",
" (322414, u'PHttpChannel::Msg_Redirect1Begin'),\n",
" (233855, u'PMessagePort::Msg_ReceiveData'),\n",
" (233855, u'PLayerTransaction::Msg_UpdateNoSwap'),\n",
" (169621, u'PWyciwygChannel::Msg_OnDataAvailable'),\n",
" (169621, u'PHttpChannel::Msg_OnStartRequest'),\n",
" (169621, u'PContent::Msg_NotifyVisited'),\n",
" (123030,\n",
" u'PWebBrowserPersistDocument::Msg_PWebBrowserPersistSerializeConstructor'),\n",
" (123030, u'PMessagePort::Msg_PostMessages'),\n",
" (89237, u'PTCPSocket::Msg_Callback'),\n",
" (89237, u'PContent::Msg_UnregisterSheet'),\n",
" (89237, u'PBrowserStream::Msg_Write'),\n",
" (46947, u'PContent::Msg_RegisterChrome'),\n",
" (34052, u'PCachePushStream::Msg_Buffer'),\n",
" (34052, u'PBrowser::Msg_LoadRemoteScript'),\n",
" (24699, u'PPluginInstance::Msg_PBrowserStreamConstructor'),\n",
" (24699, u'PBackground::Msg_PCacheStorageConstructor'),\n",
" (17915, u'PPrintSettingsDialog::Msg___delete__'),\n",
" (17915, u'PBrowser::Msg_LoadURL'),\n",
" (17915, u'PBlobStream::Msg___delete__'),\n",
" (12994, u'PWebSocket::Msg_OnStart'),\n",
" (12994, u'PStreamNotify::Msg_RedirectNotify'),\n",
" (12994, u'PGMPStorage::Msg_ReadComplete'),\n",
" (12994, u'PCacheOp::Msg___delete__')]"
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sorted([ (v, k) for (k, v) in maxes.items() ], reverse=True)"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def getData(p):\n",
" hists = p[\"payload\"].get(\"keyedHistograms\", {}).get(\"MESSAGE_MANAGER_MESSAGE_SIZE\", {})\n",
" r = {}\n",
" for name, v in hists.items():\n",
" maximum = max([ int(k) for k in v[\"values\"].keys() ])\n",
" r[name] = maximum\n",
" return r\n",
"\n",
"def combineResults(x, y):\n",
" keys = set(x.keys()) | set(y.keys())\n",
" r = {}\n",
" for k in keys:\n",
" r[k] = max(x.get(k, 0), y.get(k, 0))\n",
" return r\n",
"\n",
"mm_maxes = filtered.map(getData).reduce(combineResults)"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"[(8000000, u'sdk/remote/process/message'),\n",
" (8000000, u'SessionStore:update'),\n",
" (8000000, u'SessionStore:restoreHistory'),\n",
" (4208766, u'debug:netmonitor:server1.conn7.child1/tab1:updateEvent'),\n",
" (4208766, u'debug:netmonitor:server1.conn5.child1/tab1:updateEvent'),\n",
" (4208766, u'debug:netmonitor:server1.conn49.child1/tab1:updateEvent'),\n",
" (4208766, u'debug:netmonitor:server1.conn45.child1/tab1:updateEvent'),\n",
" (4208766, u'debug:netmonitor:server1.conn4.child1/tab1:updateEvent'),\n",
" (4208766, u'debug:netmonitor:server1.conn3.child1/tab1:updateEvent'),\n",
" (4208766, u'debug:netmonitor:server1.conn16.child1/tab1:updateEvent'),\n",
" (4208766, u'debug:netmonitor:server1.conn1.child1/tab1:updateEvent'),\n",
" (4208766, u'debug:netmonitor:server1.conn0.child1/tab1:updateEvent'),\n",
" (4208766, u'AdblockPlus:Message'),\n",
" (3052721, u'wombat::core::response'),\n",
" (3052721, u'iescreenshot-download'),\n",
" (3052721, u'greasemonkey:scripts-update'),\n",
" (3052721, u'debug:netmonitor:server1.conn8.child1/tab1:updateEvent'),\n",
" (3052721, u'debug:netmonitor:server1.conn6.child1/tab1:updateEvent'),\n",
" (3052721, u'debug:netmonitor:server1.conn36.child1/tab1:updateEvent'),\n",
" (3052721, u'debug:netmonitor:server1.conn2.child1/tab1:updateEvent'),\n",
" (3052721, u'debug:netmonitor:server1.conn15.child1/tab1:updateEvent'),\n",
" (3052721, u'debug:netmonitor:server1.conn14.child1/tab1:updateEvent'),\n",
" (3052721, u'debug:netmonitor:server1.conn13.child1/tab1:updateEvent'),\n",
" (3052721, u'debug:netmonitor:server1.conn12.child1/tab1:updateEvent'),\n",
" (3052721, u'debug:netmonitor:server1.conn11.child1/tab1:updateEvent'),\n",
" (3052721, u'debug:netmonitor:server1.conn10.child1/tab1:updateEvent'),\n",
" (2214213, u'debug:netmonitor:server1.conn9.child1/tab1:updateEvent'),\n",
" (2214213, u'debug:netmonitor:server1.conn71.child1/tab1:updateEvent'),\n",
" (2214213, u'debug:netmonitor:server1.conn69.child1/tab1:updateEvent'),\n",
" (2214213, u'debug:netmonitor:server1.conn68.child1/tab1:updateEvent'),\n",
" (2214213, u'debug:netmonitor:server1.conn56.child1/tab1:updateEvent'),\n",
" (2214213, u'debug:netmonitor:server1.conn46.child1/tab1:updateEvent'),\n",
" (2214213, u'debug:netmonitor:server1.conn41.child1/tab1:updateEvent'),\n",
" (2214213, u'debug:netmonitor:server1.conn38.child1/tab1:updateEvent'),\n",
" (2214213, u'debug:netmonitor:server1.conn32.child1/tab1:updateEvent'),\n",
" (2214213, u'debug:netmonitor:server1.conn31.child1/tab1:updateEvent'),\n",
" (2214213, u'debug:netmonitor:server1.conn29.child1/tab1:updateEvent'),\n",
" (2214213, u'debug:netmonitor:server1.conn22.child1/tab1:updateEvent'),\n",
" (2214213, u'debug:netmonitor:server1.conn21.child1/tab1:updateEvent'),\n",
" (2214213, u'debug:netmonitor:server1.conn18.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn73.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn70.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn60.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn55.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn54.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn53.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn52.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn50.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn48.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn47.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn44.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn43.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn42.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn40.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn37.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn35.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn34.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn30.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn28.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn27.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn26.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn24.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn20.child1/tab1:updateEvent'),\n",
" (1606023, u'debug:netmonitor:server1.conn19.child1/tab1:updateEvent'),\n",
" (1164888, u'ublock0:sb:2236'),\n",
" (1164888, u'ublock0:sb:2235'),\n",
" (1164888, u'resource://kango-unity-extensionkeeebcom/message'),\n",
" (1164888, u'imagus:sb:398'),\n",
" (1164888, u'imagus:sb:175'),\n",
" (1164888, u'imagus:sb:127'),\n",
" (1164888, u'debug:netmonitor:server1.conn66.child1/tab1:updateEvent'),\n",
" (1164888, u'debug:netmonitor:server1.conn58.child1/tab1:updateEvent'),\n",
" (844922, u'umatrix:sb:3'),\n",
" (844922, u'ublock0:sb:4'),\n",
" (844922, u'ublock0:background'),\n",
" (844922, u'debug:netmonitor:server1.conn59.child1/tab1:updateEvent'),\n",
" (844922, u'debug:netmonitor:server1.conn57.child1/tab1:updateEvent'),\n",
" (844922, u'debug:netmonitor:server1.conn39.child1/tab1:updateEvent'),\n",
" (844922, u'debug:netmonitor:server1.conn23.child1/tab1:updateEvent'),\n",
" (844922, u'TabScopeRemote:Response'),\n",
" (844922, u'ResponsiveMode:RequestScreenshot:Done'),\n",
" (612843, u'ublock0:sb:227'),\n",
" (612843, u'ublock0:sb:2238'),\n",
" (612843, u'ublock0:sb:2237'),\n",
" (612843, u'imagus:sb:211'),\n",
" (612843, u'debug:netmonitor:server1.conn75.child1/tab1:updateEvent'),\n",
" (612843, u'debug:netmonitor:server1.conn72.child1/tab1:updateEvent'),\n",
" (612843, u'debug:netmonitor:server1.conn64.child1/tab1:updateEvent'),\n",
" (612843, u'WebNavigation:LoadURI'),\n",
" (612843, u'AdblockPlus:ShouldAllow'),\n",
" (444510, u'sdk/remote/frame/message'),\n",
" (444510, u'imagus:sb:59'),\n",
" (444510, u'imagus:sb:16'),\n",
" (444510, u'debug:netmonitor:server1.conn82.child1/tab1:updateEvent'),\n",
" (444510, u'debug:netmonitor:server1.conn67.child1/tab1:updateEvent'),\n",
" (444510, u'debug:netmonitor:server1.conn65.child1/tab1:updateEvent'),\n",
" (444510, u'debug:netmonitor:server1.conn33.child1/tab1:updateEvent'),\n",
" (444510, u'debug:netmonitor:server1.conn25.child1/tab1:updateEvent'),\n",
" (444510, u'debug:netmonitor:server1.conn17.child1/tab1:updateEvent'),\n",
" (444510, u'PopupBlocking:UpdateBlockedPopups'),\n",
" (322414, u'umatrix:sb:29'),\n",
" (322414, u'umatrix:sb:26'),\n",
" (322414, u'ublock0:sb:88'),\n",
" (322414, u'ublock0:sb:813'),\n",
" (322414, u'ublock0:sb:235'),\n",
" (322414, u'imagus:sb:93'),\n",
" (322414, u'imagus:sb:54'),\n",
" (322414, u'imagus:sb:44'),\n",
" (322414, u'debug:netmonitor:server1.conn62.child1/tab1:updateEvent'),\n",
" (322414, u'debug:netmonitor:server1.conn51.child1/tab1:updateEvent'),\n",
" (233855, u'umatrix:sb:70'),\n",
" (233855, u'umatrix:sb:68'),\n",
" (233855, u'umatrix:sb:67'),\n",
" (233855, u'umatrix:sb:65'),\n",
" (233855, u'umatrix:sb:40'),\n",
" (233855, u'ublock0:sb:141'),\n",
" (233855, u'ublock0:locationChanged'),\n",
" (233855, u'imagus:sb:49'),\n",
" (233855, u'imagus:sb:173'),\n",
" (233855, u'imagus:sb:14'),\n",
" (233855, u'findbartweak:InnerTextResult'),\n",
" (233855, u'findbartweak:InnerTextDeepResult'),\n",
" (233855, u'debug:netmonitor:server1.conn87.child1/tab1:updateEvent'),\n",
" (233855, u'debug:netmonitor:server1.conn84.child1/tab1:updateEvent'),\n",
" (233855, u'ViewSource:LoadSourceWithSelection'),\n",
" (233855, u'ViewSource:GetSelectionDone'),\n",
" (233855, u'FormAutoComplete:AutoCompleteSearchAsyncResult'),\n",
" (233855, u'Extension:Startup'),\n",
" (169621, u'umatrix:sb:99'),\n",
" (169621, u'umatrix:sb:567'),\n",
" (169621, u'umatrix:sb:562'),\n",
" (169621, u'umatrix:sb:561'),\n",
" (169621, u'umatrix:sb:560'),\n",
" (169621, u'umatrix:sb:554'),\n",
" (169621, u'umatrix:sb:552'),\n",
" (169621, u'umatrix:sb:116'),\n",
" (169621, u'ublock:sb:337'),\n",
" (169621, u'ublock:sb:21'),\n",
" (169621, u'ublock0:sb:30'),\n",
" (169621, u'ublock0:sb:3'),\n",
" (169621, u'ublock0:sb:252'),\n",
" (169621, u'ublock0:sb:2020'),\n",
" (169621, u'ublock0:sb:2017'),\n",
" (169621, u'ublock0:sb:116'),\n",
" (169621, u'imagus:sb:94'),\n",
" (169621, u'imagus:sb:417'),\n",
" (169621, u'imagus:sb:126'),\n",
" (169621, u'debug:netmonitor:server1.conn85.child1/tab1:updateEvent'),\n",
" (169621, u'debug:netmonitor:server1.conn61.child1/tab1:updateEvent'),\n",
" (169621, u'WebRequest:ShouldLoad'),\n",
" (169621, u'Prompt:Close'),\n",
" (169621, u'Eyedropper:Screenshot'),\n",
" (123030, u'umatrix:sb:84'),\n",
" (123030, u'umatrix:sb:81'),\n",
" (123030, u'umatrix:sb:8'),\n",
" (123030, u'umatrix:sb:555'),\n",
" (123030, u'umatrix:sb:553'),\n",
" (123030, u'umatrix:sb:456'),\n",
" (123030, u'umatrix:sb:23'),\n",
" (123030, u'umatrix:sb:2'),\n",
" (123030, u'umatrix:sb:10'),\n",
" (123030, u'umatrix:background'),\n",
" (123030, u'ublock:sb:96'),\n",
" (123030, u'ublock:sb:905'),\n",
" (123030, u'ublock:sb:90'),\n",
" (123030, u'ublock:sb:9'),\n",
" (123030, u'ublock:sb:89'),\n",
" (123030, u'ublock:sb:88'),\n",
" (123030, u'ublock:sb:87'),\n",
" (123030, u'ublock:sb:86'),\n",
" (123030, u'ublock:sb:84'),\n",
" (123030, u'ublock:sb:8'),\n",
" (123030, u'ublock:sb:75'),\n",
" (123030, u'ublock:sb:73'),\n",
" (123030, u'ublock:sb:71'),\n",
" (123030, u'ublock:sb:7'),\n",
" (123030, u'ublock:sb:62'),\n",
" (123030, u'ublock:sb:61'),\n",
" (123030, u'ublock:sb:60'),\n",
" (123030, u'ublock:sb:6'),\n",
" (123030, u'ublock:sb:57'),\n",
" (123030, u'ublock:sb:46'),\n",
" (123030, u'ublock:sb:45'),\n",
" (123030, u'ublock:sb:390'),\n",
" (123030, u'ublock:sb:39'),\n",
" (123030, u'ublock:sb:372'),\n",
" (123030, u'ublock:sb:371'),\n",
" (123030, u'ublock:sb:370'),\n",
" (123030, u'ublock:sb:369'),\n",
" (123030, u'ublock:sb:368'),\n",
" (123030, u'ublock:sb:367'),\n",
" (123030, u'ublock:sb:366'),\n",
" (123030, u'ublock:sb:365'),\n",
" (123030, u'ublock:sb:364'),\n",
" (123030, u'ublock:sb:363'),\n",
" (123030, u'ublock:sb:362'),\n",
" (123030, u'ublock:sb:361'),\n",
" (123030, u'ublock:sb:357'),\n",
" (123030, u'ublock:sb:349'),\n",
" (123030, u'ublock:sb:348'),\n",
" (123030, u'ublock:sb:347'),\n",
" (123030, u'ublock:sb:346'),\n",
" (123030, u'ublock:sb:345'),\n",
" (123030, u'ublock:sb:344'),\n",
" (123030, u'ublock:sb:343'),\n",
" (123030, u'ublock:sb:342'),\n",
" (123030, u'ublock:sb:341'),\n",
" (123030, u'ublock:sb:335'),\n",
" (123030, u'ublock:sb:334'),\n",
" (123030, u'ublock:sb:333'),\n",
" (123030, u'ublock:sb:332'),\n",
" (123030, u'ublock:sb:331'),\n",
" (123030, u'ublock:sb:330'),\n",
" (123030, u'ublock:sb:329'),\n",
" (123030, u'ublock:sb:328'),\n",
" (123030, u'ublock:sb:327'),\n",
" (123030, u'ublock:sb:326'),\n",
" (123030, u'ublock:sb:325'),\n",
" (123030, u'ublock:sb:324'),\n",
" (123030, u'ublock:sb:323'),\n",
" (123030, u'ublock:sb:322'),\n",
" (123030, u'ublock:sb:321'),\n",
" (123030, u'ublock:sb:320'),\n",
" (123030, u'ublock:sb:319'),\n",
" (123030, u'ublock:sb:318'),\n",
" (123030, u'ublock:sb:314'),\n",
" (123030, u'ublock:sb:310'),\n",
" (123030, u'ublock:sb:305'),\n",
" (123030, u'ublock:sb:304'),\n",
" (123030, u'ublock:sb:300'),\n",
" (123030, u'ublock:sb:3'),\n",
" (123030, u'ublock:sb:296'),\n",
" (123030, u'ublock:sb:292'),\n",
" (123030, u'ublock:sb:288'),\n",
" (123030, u'ublock:sb:284'),\n",
" (123030, u'ublock:sb:280'),\n",
" (123030, u'ublock:sb:28'),\n",
" (123030, u'ublock:sb:279'),\n",
" (123030, u'ublock:sb:275'),\n",
" (123030, u'ublock:sb:274'),\n",
" (123030, u'ublock:sb:2733'),\n",
" (123030, u'ublock:sb:2732'),\n",
" (123030, u'ublock:sb:270'),\n",
" (123030, u'ublock:sb:27'),\n",
" (123030, u'ublock:sb:2562'),\n",
" (123030, u'ublock:sb:256'),\n",
" (123030, u'ublock:sb:252'),\n",
" (123030, u'ublock:sb:248'),\n",
" (123030, u'ublock:sb:244'),\n",
" (123030, u'ublock:sb:240'),\n",
" (123030, u'ublock:sb:236'),\n",
" (123030, u'ublock:sb:232'),\n",
" (123030, u'ublock:sb:228'),\n",
" (123030, u'ublock:sb:227'),\n",
" (123030, u'ublock:sb:222'),\n",
" (123030, u'ublock:sb:221'),\n",
" (123030, u'ublock:sb:220'),\n",
" (123030, u'ublock:sb:217'),\n",
" (123030, u'ublock:sb:216'),\n",
" (123030, u'ublock:sb:215'),\n",
" (123030, u'ublock:sb:214'),\n",
" (123030, u'ublock:sb:213'),\n",
" (123030, u'ublock:sb:212'),\n",
" (123030, u'ublock:sb:211'),\n",
" (123030, u'ublock:sb:210'),\n",
" (123030, u'ublock:sb:206'),\n",
" (123030, u'ublock:sb:202'),\n",
" (123030, u'ublock:sb:201'),\n",
" (123030, u'ublock:sb:196'),\n",
" (123030, u'ublock:sb:195'),\n",
" (123030, u'ublock:sb:194'),\n",
" (123030, u'ublock:sb:193'),\n",
" (123030, u'ublock:sb:192'),\n",
" (123030, u'ublock:sb:191'),\n",
" (123030, u'ublock:sb:190'),\n",
" (123030, u'ublock:sb:189'),\n",
" (123030, u'ublock:sb:188'),\n",
" (123030, u'ublock:sb:187'),\n",
" (123030, u'ublock:sb:183'),\n",
" (123030, u'ublock:sb:180'),\n",
" (123030, u'ublock:sb:179'),\n",
" (123030, u'ublock:sb:175'),\n",
" (123030, u'ublock:sb:1723'),\n",
" (123030, u'ublock:sb:171'),\n",
" (123030, u'ublock:sb:167'),\n",
" (123030, u'ublock:sb:163'),\n",
" (123030, u'ublock:sb:159'),\n",
" (123030, u'ublock:sb:155'),\n",
" (123030, u'ublock:sb:154'),\n",
" (123030, u'ublock:sb:145'),\n",
" (123030, u'ublock:sb:140'),\n",
" (123030, u'ublock:sb:132'),\n",
" (123030, u'ublock:sb:118'),\n",
" (123030, u'ublock:sb:117'),\n",
" (123030, u'ublock:sb:116'),\n",
" (123030, u'ublock:sb:11'),\n",
" (123030, u'ublock:sb:1012'),\n",
" (123030, u'ublock:sb:1003'),\n",
" (123030, u'ublock:sb:10'),\n",
" (123030, u'ublock:sb:1'),\n",
" (123030, u'ublock:background'),\n",
" (123030, u'ublock0:sb:999'),\n",
" (123030, u'ublock0:sb:998'),\n",
" (123030, u'ublock0:sb:997'),\n",
" (123030, u'ublock0:sb:996'),\n",
" (123030, u'ublock0:sb:995'),\n",
" (123030, u'ublock0:sb:994'),\n",
" (123030, u'ublock0:sb:993'),\n",
" (123030, u'ublock0:sb:992'),\n",
" (123030, u'ublock0:sb:991'),\n",
" (123030, u'ublock0:sb:990'),\n",
" (123030, u'ublock0:sb:99'),\n",
" (123030, u'ublock0:sb:989'),\n",
" (123030, u'ublock0:sb:988'),\n",
" (123030, u'ublock0:sb:987'),\n",
" (123030, u'ublock0:sb:986'),\n",
" (123030, u'ublock0:sb:985'),\n",
" (123030, u'ublock0:sb:984'),\n",
" (123030, u'ublock0:sb:983'),\n",
" (123030, u'ublock0:sb:982'),\n",
" (123030, u'ublock0:sb:981'),\n",
" (123030, u'ublock0:sb:980'),\n",
" (123030, u'ublock0:sb:98'),\n",
" (123030, u'ublock0:sb:979'),\n",
" (123030, u'ublock0:sb:978'),\n",
" (123030, u'ublock0:sb:977'),\n",
" (123030, u'ublock0:sb:976'),\n",
" (123030, u'ublock0:sb:975'),\n",
" (123030, u'ublock0:sb:974'),\n",
" (123030, u'ublock0:sb:973'),\n",
" (123030, u'ublock0:sb:972'),\n",
" (123030, u'ublock0:sb:971'),\n",
" (123030, u'ublock0:sb:970'),\n",
" (123030, u'ublock0:sb:97'),\n",
" (123030, u'ublock0:sb:969'),\n",
" (123030, u'ublock0:sb:968'),\n",
" (123030, u'ublock0:sb:967'),\n",
" (123030, u'ublock0:sb:966'),\n",
" (123030, u'ublock0:sb:965'),\n",
" (123030, u'ublock0:sb:964'),\n",
" (123030, u'ublock0:sb:963'),\n",
" (123030, u'ublock0:sb:962'),\n",
" (123030, u'ublock0:sb:961'),\n",
" (123030, u'ublock0:sb:960'),\n",
" (123030, u'ublock0:sb:96'),\n",
" (123030, u'ublock0:sb:959'),\n",
" (123030, u'ublock0:sb:958'),\n",
" (123030, u'ublock0:sb:957'),\n",
" (123030, u'ublock0:sb:956'),\n",
" (123030, u'ublock0:sb:955'),\n",
" (123030, u'ublock0:sb:954'),\n",
" (123030, u'ublock0:sb:953'),\n",
" (123030, u'ublock0:sb:952'),\n",
" (123030, u'ublock0:sb:951'),\n",
" (123030, u'ublock0:sb:950'),\n",
" (123030, u'ublock0:sb:95'),\n",
" (123030, u'ublock0:sb:949'),\n",
" (123030, u'ublock0:sb:948'),\n",
" (123030, u'ublock0:sb:947'),\n",
" (123030, u'ublock0:sb:946'),\n",
" (123030, u'ublock0:sb:945'),\n",
" (123030, u'ublock0:sb:944'),\n",
" (123030, u'ublock0:sb:943'),\n",
" (123030, u'ublock0:sb:942'),\n",
" (123030, u'ublock0:sb:941'),\n",
" (123030, u'ublock0:sb:940'),\n",
" (123030, u'ublock0:sb:94'),\n",
" (123030, u'ublock0:sb:939'),\n",
" (123030, u'ublock0:sb:938'),\n",
" (123030, u'ublock0:sb:937'),\n",
" (123030, u'ublock0:sb:936'),\n",
" (123030, u'ublock0:sb:935'),\n",
" (123030, u'ublock0:sb:934'),\n",
" (123030, u'ublock0:sb:933'),\n",
" (123030, u'ublock0:sb:932'),\n",
" (123030, u'ublock0:sb:931'),\n",
" (123030, u'ublock0:sb:930'),\n",
" (123030, u'ublock0:sb:93'),\n",
" (123030, u'ublock0:sb:929'),\n",
" (123030, u'ublock0:sb:928'),\n",
" (123030, u'ublock0:sb:927'),\n",
" (123030, u'ublock0:sb:926'),\n",
" (123030, u'ublock0:sb:925'),\n",
" (123030, u'ublock0:sb:924'),\n",
" (123030, u'ublock0:sb:923'),\n",
" (123030, u'ublock0:sb:922'),\n",
" (123030, u'ublock0:sb:921'),\n",
" (123030, u'ublock0:sb:920'),\n",
" (123030, u'ublock0:sb:92'),\n",
" (123030, u'ublock0:sb:919'),\n",
" (123030, u'ublock0:sb:918'),\n",
" (123030, u'ublock0:sb:917'),\n",
" (123030, u'ublock0:sb:916'),\n",
" (123030, u'ublock0:sb:915'),\n",
" (123030, u'ublock0:sb:914'),\n",
" (123030, u'ublock0:sb:913'),\n",
" (123030, u'ublock0:sb:912'),\n",
" (123030, u'ublock0:sb:911'),\n",
" (123030, u'ublock0:sb:910'),\n",
" (123030, u'ublock0:sb:91'),\n",
" (123030, u'ublock0:sb:909'),\n",
" (123030, u'ublock0:sb:908'),\n",
" (123030, u'ublock0:sb:907'),\n",
" (123030, u'ublock0:sb:906'),\n",
" (123030, u'ublock0:sb:905'),\n",
" (123030, u'ublock0:sb:904'),\n",
" (123030, u'ublock0:sb:903'),\n",
" (123030, u'ublock0:sb:902'),\n",
" (123030, u'ublock0:sb:901'),\n",
" (123030, u'ublock0:sb:900'),\n",
" (123030, u'ublock0:sb:90'),\n",
" (123030, u'ublock0:sb:9'),\n",
" (123030, u'ublock0:sb:899'),\n",
" (123030, u'ublock0:sb:898'),\n",
" (123030, u'ublock0:sb:897'),\n",
" (123030, u'ublock0:sb:896'),\n",
" (123030, u'ublock0:sb:895'),\n",
" (123030, u'ublock0:sb:894'),\n",
" (123030, u'ublock0:sb:893'),\n",
" (123030, u'ublock0:sb:892'),\n",
" (123030, u'ublock0:sb:891'),\n",
" (123030, u'ublock0:sb:890'),\n",
" (123030, u'ublock0:sb:89'),\n",
" (123030, u'ublock0:sb:889'),\n",
" (123030, u'ublock0:sb:888'),\n",
" (123030, u'ublock0:sb:887'),\n",
" (123030, u'ublock0:sb:886'),\n",
" (123030, u'ublock0:sb:885'),\n",
" (123030, u'ublock0:sb:884'),\n",
" (123030, u'ublock0:sb:883'),\n",
" (123030, u'ublock0:sb:882'),\n",
" (123030, u'ublock0:sb:881'),\n",
" (123030, u'ublock0:sb:880'),\n",
" (123030, u'ublock0:sb:879'),\n",
" (123030, u'ublock0:sb:878'),\n",
" (123030, u'ublock0:sb:877'),\n",
" (123030, u'ublock0:sb:876'),\n",
" (123030, u'ublock0:sb:875'),\n",
" (123030, u'ublock0:sb:874'),\n",
" (123030, u'ublock0:sb:873'),\n",
" (123030, u'ublock0:sb:872'),\n",
" (123030, u'ublock0:sb:871'),\n",
" (123030, u'ublock0:sb:870'),\n",
" (123030, u'ublock0:sb:87'),\n",
" (123030, u'ublock0:sb:869'),\n",
" (123030, u'ublock0:sb:868'),\n",
" (123030, u'ublock0:sb:867'),\n",
" (123030, u'ublock0:sb:866'),\n",
" (123030, u'ublock0:sb:865'),\n",
" (123030, u'ublock0:sb:864'),\n",
" (123030, u'ublock0:sb:863'),\n",
" (123030, u'ublock0:sb:862'),\n",
" (123030, u'ublock0:sb:861'),\n",
" (123030, u'ublock0:sb:860'),\n",
" (123030, u'ublock0:sb:86'),\n",
" (123030, u'ublock0:sb:859'),\n",
" (123030, u'ublock0:sb:858'),\n",
" (123030, u'ublock0:sb:857'),\n",
" (123030, u'ublock0:sb:856'),\n",
" (123030, u'ublock0:sb:855'),\n",
" (123030, u'ublock0:sb:854'),\n",
" (123030, u'ublock0:sb:853'),\n",
" (123030, u'ublock0:sb:852'),\n",
" (123030, u'ublock0:sb:851'),\n",
" (123030, u'ublock0:sb:850'),\n",
" (123030, u'ublock0:sb:85'),\n",
" (123030, u'ublock0:sb:849'),\n",
" (123030, u'ublock0:sb:848'),\n",
" (123030, u'ublock0:sb:847'),\n",
" (123030, u'ublock0:sb:846'),\n",
" (123030, u'ublock0:sb:845'),\n",
" (123030, u'ublock0:sb:844'),\n",
" (123030, u'ublock0:sb:843'),\n",
" (123030, u'ublock0:sb:842'),\n",
" (123030, u'ublock0:sb:841'),\n",
" (123030, u'ublock0:sb:840'),\n",
" (123030, u'ublock0:sb:84'),\n",
" (123030, u'ublock0:sb:839'),\n",
" (123030, u'ublock0:sb:838'),\n",
" (123030, u'ublock0:sb:837'),\n",
" (123030, u'ublock0:sb:836'),\n",
" (123030, u'ublock0:sb:835'),\n",
" (123030, u'ublock0:sb:834'),\n",
" (123030, u'ublock0:sb:833'),\n",
" (123030, u'ublock0:sb:832'),\n",
" (123030, u'ublock0:sb:831'),\n",
" (123030, u'ublock0:sb:830'),\n",
" (123030, u'ublock0:sb:83'),\n",
" (123030, u'ublock0:sb:829'),\n",
" (123030, u'ublock0:sb:828'),\n",
" (123030, u'ublock0:sb:827'),\n",
" (123030, u'ublock0:sb:826'),\n",
" (123030, u'ublock0:sb:825'),\n",
" (123030, u'ublock0:sb:824'),\n",
" (123030, u'ublock0:sb:823'),\n",
" (123030, u'ublock0:sb:822'),\n",
" (123030, u'ublock0:sb:821'),\n",
" (123030, u'ublock0:sb:820'),\n",
" (123030, u'ublock0:sb:82'),\n",
" (123030, u'ublock0:sb:819'),\n",
" (123030, u'ublock0:sb:818'),\n",
" (123030, u'ublock0:sb:817'),\n",
" (123030, u'ublock0:sb:816'),\n",
" (123030, u'ublock0:sb:815'),\n",
" (123030, u'ublock0:sb:814'),\n",
" (123030, u'ublock0:sb:812'),\n",
" (123030, u'ublock0:sb:811'),\n",
" (123030, u'ublock0:sb:810'),\n",
" (123030, u'ublock0:sb:81'),\n",
" (123030, u'ublock0:sb:809'),\n",
" (123030, u'ublock0:sb:808'),\n",
" (123030, u'ublock0:sb:807'),\n",
" (123030, u'ublock0:sb:806'),\n",
" (123030, u'ublock0:sb:805'),\n",
" (123030, u'ublock0:sb:804'),\n",
" (123030, u'ublock0:sb:803'),\n",
" (123030, u'ublock0:sb:802'),\n",
" (123030, u'ublock0:sb:801'),\n",
" (123030, u'ublock0:sb:800'),\n",
" (123030, u'ublock0:sb:80'),\n",
" (123030, u'ublock0:sb:8'),\n",
" (123030, u'ublock0:sb:799'),\n",
" (123030, u'ublock0:sb:798'),\n",
" (123030, u'ublock0:sb:797'),\n",
" (123030, u'ublock0:sb:796'),\n",
" (123030, u'ublock0:sb:795'),\n",
" (123030, u'ublock0:sb:794'),\n",
" (123030, u'ublock0:sb:793'),\n",
" (123030, u'ublock0:sb:792'),\n",
" (123030, u'ublock0:sb:791'),\n",
" (123030, u'ublock0:sb:790'),\n",
" (123030, u'ublock0:sb:79'),\n",
" (123030, u'ublock0:sb:789'),\n",
" (123030, u'ublock0:sb:788'),\n",
" (123030, u'ublock0:sb:787'),\n",
" (123030, u'ublock0:sb:786'),\n",
" (123030, u'ublock0:sb:785'),\n",
" (123030, u'ublock0:sb:784'),\n",
" (123030, u'ublock0:sb:783'),\n",
" (123030, u'ublock0:sb:782'),\n",
" (123030, u'ublock0:sb:781'),\n",
" (123030, u'ublock0:sb:780'),\n",
" (123030, u'ublock0:sb:78'),\n",
" (123030, u'ublock0:sb:779'),\n",
" (123030, u'ublock0:sb:778'),\n",
" (123030, u'ublock0:sb:777'),\n",
" (123030, u'ublock0:sb:776'),\n",
" (123030, u'ublock0:sb:775'),\n",
" (123030, u'ublock0:sb:774'),\n",
" (123030, u'ublock0:sb:773'),\n",
" (123030, u'ublock0:sb:772'),\n",
" (123030, u'ublock0:sb:771'),\n",
" (123030, u'ublock0:sb:770'),\n",
" (123030, u'ublock0:sb:77'),\n",
" (123030, u'ublock0:sb:769'),\n",
" (123030, u'ublock0:sb:768'),\n",
" (123030, u'ublock0:sb:767'),\n",
" (123030, u'ublock0:sb:766'),\n",
" (123030, u'ublock0:sb:765'),\n",
" (123030, u'ublock0:sb:764'),\n",
" (123030, u'ublock0:sb:763'),\n",
" (123030, u'ublock0:sb:762'),\n",
" (123030, u'ublock0:sb:761'),\n",
" (123030, u'ublock0:sb:760'),\n",
" (123030, u'ublock0:sb:76'),\n",
" (123030, u'ublock0:sb:759'),\n",
" (123030, u'ublock0:sb:758'),\n",
" (123030, u'ublock0:sb:757'),\n",
" (123030, u'ublock0:sb:756'),\n",
" (123030, u'ublock0:sb:755'),\n",
" (123030, u'ublock0:sb:754'),\n",
" (123030, u'ublock0:sb:753'),\n",
" (123030, u'ublock0:sb:752'),\n",
" (123030, u'ublock0:sb:751'),\n",
" (123030, u'ublock0:sb:750'),\n",
" (123030, u'ublock0:sb:75'),\n",
" (123030, u'ublock0:sb:749'),\n",
" (123030, u'ublock0:sb:748'),\n",
" (123030, u'ublock0:sb:747'),\n",
" (123030, u'ublock0:sb:746'),\n",
" (123030, u'ublock0:sb:745'),\n",
" (123030, u'ublock0:sb:744'),\n",
" (123030, u'ublock0:sb:743'),\n",
" (123030, u'ublock0:sb:742'),\n",
" (123030, u'ublock0:sb:741'),\n",
" (123030, u'ublock0:sb:740'),\n",
" (123030, u'ublock0:sb:74'),\n",
" (123030, u'ublock0:sb:739'),\n",
" (123030, u'ublock0:sb:738'),\n",
" (123030, u'ublock0:sb:737'),\n",
" (123030, u'ublock0:sb:736'),\n",
" (123030, u'ublock0:sb:735'),\n",
" (123030, u'ublock0:sb:734'),\n",
" (123030, u'ublock0:sb:733'),\n",
" (123030, u'ublock0:sb:732'),\n",
" (123030, u'ublock0:sb:731'),\n",
" (123030, u'ublock0:sb:730'),\n",
" (123030, u'ublock0:sb:73'),\n",
" (123030, u'ublock0:sb:729'),\n",
" (123030, u'ublock0:sb:728'),\n",
" (123030, u'ublock0:sb:727'),\n",
" (123030, u'ublock0:sb:726'),\n",
" (123030, u'ublock0:sb:723'),\n",
" (123030, u'ublock0:sb:722'),\n",
" (123030, u'ublock0:sb:721'),\n",
" (123030, u'ublock0:sb:720'),\n",
" (123030, u'ublock0:sb:72'),\n",
" (123030, u'ublock0:sb:719'),\n",
" (123030, u'ublock0:sb:718'),\n",
" (123030, u'ublock0:sb:717'),\n",
" (123030, u'ublock0:sb:716'),\n",
" (123030, u'ublock0:sb:715'),\n",
" (123030, u'ublock0:sb:714'),\n",
" (123030, u'ublock0:sb:713'),\n",
" (123030, u'ublock0:sb:712'),\n",
" (123030, u'ublock0:sb:711'),\n",
" (123030, u'ublock0:sb:710'),\n",
" (123030, u'ublock0:sb:71'),\n",
" (123030, u'ublock0:sb:709'),\n",
" (123030, u'ublock0:sb:708'),\n",
" (123030, u'ublock0:sb:707'),\n",
" (123030, u'ublock0:sb:706'),\n",
" (123030, u'ublock0:sb:705'),\n",
" (123030, u'ublock0:sb:704'),\n",
" (123030, u'ublock0:sb:703'),\n",
" (123030, u'ublock0:sb:702'),\n",
" (123030, u'ublock0:sb:701'),\n",
" (123030, u'ublock0:sb:70'),\n",
" (123030, u'ublock0:sb:7'),\n",
" (123030, u'ublock0:sb:699'),\n",
" (123030, u'ublock0:sb:698'),\n",
" (123030, u'ublock0:sb:697'),\n",
" (123030, u'ublock0:sb:696'),\n",
" (123030, u'ublock0:sb:695'),\n",
" (123030, u'ublock0:sb:694'),\n",
" (123030, u'ublock0:sb:693'),\n",
" (123030, u'ublock0:sb:692'),\n",
" (123030, u'ublock0:sb:691'),\n",
" (123030, u'ublock0:sb:690'),\n",
" (123030, u'ublock0:sb:69'),\n",
" (123030, u'ublock0:sb:689'),\n",
" (123030, u'ublock0:sb:688'),\n",
" (123030, u'ublock0:sb:687'),\n",
" (123030, u'ublock0:sb:686'),\n",
" (123030, u'ublock0:sb:685'),\n",
" (123030, u'ublock0:sb:684'),\n",
" (123030, u'ublock0:sb:683'),\n",
" (123030, u'ublock0:sb:682'),\n",
" (123030, u'ublock0:sb:681'),\n",
" (123030, u'ublock0:sb:680'),\n",
" (123030, u'ublock0:sb:68'),\n",
" (123030, u'ublock0:sb:679'),\n",
" (123030, u'ublock0:sb:678'),\n",
" (123030, u'ublock0:sb:677'),\n",
" (123030, u'ublock0:sb:676'),\n",
" (123030, u'ublock0:sb:675'),\n",
" (123030, u'ublock0:sb:674'),\n",
" (123030, u'ublock0:sb:673'),\n",
" (123030, u'ublock0:sb:672'),\n",
" (123030, u'ublock0:sb:671'),\n",
" (123030, u'ublock0:sb:670'),\n",
" (123030, u'ublock0:sb:67'),\n",
" (123030, u'ublock0:sb:669'),\n",
" (123030, u'ublock0:sb:668'),\n",
" (123030, u'ublock0:sb:667'),\n",
" (123030, u'ublock0:sb:666'),\n",
" (123030, u'ublock0:sb:665'),\n",
" (123030, u'ublock0:sb:664'),\n",
" (123030, u'ublock0:sb:663'),\n",
" (123030, u'ublock0:sb:662'),\n",
" (123030, u'ublock0:sb:661'),\n",
" (123030, u'ublock0:sb:660'),\n",
" (123030, u'ublock0:sb:66'),\n",
" (123030, u'ublock0:sb:659'),\n",
" (123030, u'ublock0:sb:658'),\n",
" (123030, u'ublock0:sb:657'),\n",
" (123030, u'ublock0:sb:656'),\n",
" (123030, u'ublock0:sb:655'),\n",
" (123030, u'ublock0:sb:654'),\n",
" (123030, u'ublock0:sb:653'),\n",
" (123030, u'ublock0:sb:652'),\n",
" (123030, u'ublock0:sb:651'),\n",
" (123030, u'ublock0:sb:650'),\n",
" (123030, u'ublock0:sb:65'),\n",
" (123030, u'ublock0:sb:649'),\n",
" (123030, u'ublock0:sb:648'),\n",
" (123030, u'ublock0:sb:647'),\n",
" (123030, u'ublock0:sb:646'),\n",
" (123030, u'ublock0:sb:645'),\n",
" (123030, u'ublock0:sb:644'),\n",
" (123030, u'ublock0:sb:643'),\n",
" (123030, u'ublock0:sb:642'),\n",
" (123030, u'ublock0:sb:641'),\n",
" (123030, u'ublock0:sb:640'),\n",
" (123030, u'ublock0:sb:64'),\n",
" (123030, u'ublock0:sb:639'),\n",
" (123030, u'ublock0:sb:638'),\n",
" (123030, u'ublock0:sb:637'),\n",
" (123030, u'ublock0:sb:636'),\n",
" (123030, u'ublock0:sb:635'),\n",
" (123030, u'ublock0:sb:634'),\n",
" (123030, u'ublock0:sb:633'),\n",
" (123030, u'ublock0:sb:632'),\n",
" (123030, u'ublock0:sb:631'),\n",
" (123030, u'ublock0:sb:630'),\n",
" (123030, u'ublock0:sb:63'),\n",
" (123030, u'ublock0:sb:629'),\n",
" (123030, u'ublock0:sb:628'),\n",
" (123030, u'ublock0:sb:627'),\n",
" (123030, u'ublock0:sb:626'),\n",
" (123030, u'ublock0:sb:625'),\n",
" (123030, u'ublock0:sb:624'),\n",
" (123030, u'ublock0:sb:623'),\n",
" (123030, u'ublock0:sb:622'),\n",
" (123030, u'ublock0:sb:621'),\n",
" (123030, u'ublock0:sb:620'),\n",
" (123030, u'ublock0:sb:62'),\n",
" (123030, u'ublock0:sb:619'),\n",
" (123030, u'ublock0:sb:618'),\n",
" (123030, u'ublock0:sb:617'),\n",
" (123030, u'ublock0:sb:616'),\n",
" (123030, u'ublock0:sb:615'),\n",
" (123030, u'ublock0:sb:614'),\n",
" (123030, u'ublock0:sb:613'),\n",
" (123030, u'ublock0:sb:612'),\n",
" (123030, u'ublock0:sb:611'),\n",
" (123030, u'ublock0:sb:610'),\n",
" (123030, u'ublock0:sb:61'),\n",
" (123030, u'ublock0:sb:609'),\n",
" (123030, u'ublock0:sb:608'),\n",
" (123030, u'ublock0:sb:607'),\n",
" (123030, u'ublock0:sb:606'),\n",
" (123030, u'ublock0:sb:605'),\n",
" (123030, u'ublock0:sb:604'),\n",
" (123030, u'ublock0:sb:603'),\n",
" (123030, u'ublock0:sb:602'),\n",
" (123030, u'ublock0:sb:601'),\n",
" (123030, u'ublock0:sb:600'),\n",
" (123030, u'ublock0:sb:60'),\n",
" (123030, u'ublock0:sb:6'),\n",
" (123030, u'ublock0:sb:599'),\n",
" (123030, u'ublock0:sb:598'),\n",
" (123030, u'ublock0:sb:597'),\n",
" (123030, u'ublock0:sb:596'),\n",
" (123030, u'ublock0:sb:595'),\n",
" (123030, u'ublock0:sb:594'),\n",
" (123030, u'ublock0:sb:593'),\n",
" (123030, u'ublock0:sb:592'),\n",
" (123030, u'ublock0:sb:591'),\n",
" (123030, u'ublock0:sb:590'),\n",
" (123030, u'ublock0:sb:59'),\n",
" (123030, u'ublock0:sb:589'),\n",
" (123030, u'ublock0:sb:588'),\n",
" (123030, u'ublock0:sb:584'),\n",
" (123030, u'ublock0:sb:583'),\n",
" (123030, u'ublock0:sb:582'),\n",
" (123030, u'ublock0:sb:581'),\n",
" (123030, u'ublock0:sb:580'),\n",
" (123030, u'ublock0:sb:58'),\n",
" (123030, u'ublock0:sb:579'),\n",
" (123030, u'ublock0:sb:578'),\n",
" (123030, u'ublock0:sb:577'),\n",
" (123030, u'ublock0:sb:576'),\n",
" (123030, u'ublock0:sb:575'),\n",
" (123030, u'ublock0:sb:574'),\n",
" (123030, u'ublock0:sb:573'),\n",
" (123030, u'ublock0:sb:572'),\n",
" (123030, u'ublock0:sb:571'),\n",
" (123030, u'ublock0:sb:570'),\n",
" (123030, u'ublock0:sb:57'),\n",
" (123030, u'ublock0:sb:569'),\n",
" (123030, u'ublock0:sb:568'),\n",
" (123030, u'ublock0:sb:567'),\n",
" (123030, u'ublock0:sb:566'),\n",
" (123030, u'ublock0:sb:565'),\n",
" (123030, u'ublock0:sb:564'),\n",
" (123030, u'ublock0:sb:563'),\n",
" (123030, u'ublock0:sb:562'),\n",
" (123030, u'ublock0:sb:561'),\n",
" (123030, u'ublock0:sb:560'),\n",
" (123030, u'ublock0:sb:56'),\n",
" (123030, u'ublock0:sb:559'),\n",
" (123030, u'ublock0:sb:558'),\n",
" (123030, u'ublock0:sb:557'),\n",
" (123030, u'ublock0:sb:556'),\n",
" (123030, u'ublock0:sb:555'),\n",
" (123030, u'ublock0:sb:554'),\n",
" (123030, u'ublock0:sb:553'),\n",
" (123030, u'ublock0:sb:552'),\n",
" (123030, u'ublock0:sb:551'),\n",
" (123030, u'ublock0:sb:550'),\n",
" (123030, u'ublock0:sb:55'),\n",
" (123030, u'ublock0:sb:549'),\n",
" (123030, u'ublock0:sb:548'),\n",
" (123030, u'ublock0:sb:547'),\n",
" (123030, u'ublock0:sb:546'),\n",
" (123030, u'ublock0:sb:545'),\n",
" (123030, u'ublock0:sb:544'),\n",
" (123030, u'ublock0:sb:543'),\n",
" (123030, u'ublock0:sb:542'),\n",
" (123030, u'ublock0:sb:541'),\n",
" (123030, u'ublock0:sb:540'),\n",
" (123030, u'ublock0:sb:54'),\n",
" (123030, u'ublock0:sb:539'),\n",
" (123030, u'ublock0:sb:538'),\n",
" (123030, u'ublock0:sb:537'),\n",
" (123030, u'ublock0:sb:536'),\n",
" (123030, u'ublock0:sb:535'),\n",
" (123030, u'ublock0:sb:534'),\n",
" (123030, u'ublock0:sb:533'),\n",
" (123030, u'ublock0:sb:532'),\n",
" (123030, u'ublock0:sb:531'),\n",
" (123030, u'ublock0:sb:530'),\n",
" (123030, u'ublock0:sb:53'),\n",
" (123030, u'ublock0:sb:529'),\n",
" (123030, u'ublock0:sb:528'),\n",
" (123030, u'ublock0:sb:527'),\n",
" (123030, u'ublock0:sb:526'),\n",
" (123030, u'ublock0:sb:525'),\n",
" (123030, u'ublock0:sb:524'),\n",
" (123030, u'ublock0:sb:523'),\n",
" (123030, u'ublock0:sb:522'),\n",
" (123030, u'ublock0:sb:521'),\n",
" (123030, u'ublock0:sb:52'),\n",
" (123030, u'ublock0:sb:519'),\n",
" (123030, u'ublock0:sb:518'),\n",
" (123030, u'ublock0:sb:517'),\n",
" (123030, u'ublock0:sb:516'),\n",
" (123030, u'ublock0:sb:515'),\n",
" (123030, u'ublock0:sb:514'),\n",
" (123030, u'ublock0:sb:513'),\n",
" (123030, u'ublock0:sb:512'),\n",
" (123030, u'ublock0:sb:511'),\n",
" (123030, u'ublock0:sb:510'),\n",
" (123030, u'ublock0:sb:51'),\n",
" (123030, u'ublock0:sb:509'),\n",
" (123030, u'ublock0:sb:508'),\n",
" (123030, u'ublock0:sb:507'),\n",
" (123030, u'ublock0:sb:504'),\n",
" (123030, u'ublock0:sb:503'),\n",
" (123030, u'ublock0:sb:502'),\n",
" (123030, u'ublock0:sb:501'),\n",
" (123030, u'ublock0:sb:500'),\n",
" (123030, u'ublock0:sb:50'),\n",
" (123030, u'ublock0:sb:5'),\n",
" (123030, u'ublock0:sb:499'),\n",
" (123030, u'ublock0:sb:498'),\n",
" (123030, u'ublock0:sb:497'),\n",
" (123030, u'ublock0:sb:496'),\n",
" (123030, u'ublock0:sb:495'),\n",
" (123030, u'ublock0:sb:494'),\n",
" (123030, u'ublock0:sb:493'),\n",
" (123030, u'ublock0:sb:492'),\n",
" (123030, u'ublock0:sb:491'),\n",
" (123030, u'ublock0:sb:490'),\n",
" (123030, u'ublock0:sb:49'),\n",
" (123030, u'ublock0:sb:489'),\n",
" (123030, u'ublock0:sb:488'),\n",
" (123030, u'ublock0:sb:487'),\n",
" (123030, u'ublock0:sb:486'),\n",
" (123030, u'ublock0:sb:485'),\n",
" (123030, u'ublock0:sb:484'),\n",
" (123030, u'ublock0:sb:483'),\n",
" (123030, u'ublock0:sb:482'),\n",
" (123030, u'ublock0:sb:481'),\n",
" (123030, u'ublock0:sb:480'),\n",
" (123030, u'ublock0:sb:48'),\n",
" (123030, u'ublock0:sb:479'),\n",
" (123030, u'ublock0:sb:478'),\n",
" (123030, u'ublock0:sb:477'),\n",
" (123030, u'ublock0:sb:476'),\n",
" (123030, u'ublock0:sb:475'),\n",
" (123030, u'ublock0:sb:474'),\n",
" (123030, u'ublock0:sb:473'),\n",
" (123030, u'ublock0:sb:472'),\n",
" (123030, u'ublock0:sb:471'),\n",
" (123030, u'ublock0:sb:470'),\n",
" (123030, u'ublock0:sb:47'),\n",
" (123030, u'ublock0:sb:469'),\n",
" (123030, u'ublock0:sb:468'),\n",
" (123030, u'ublock0:sb:467'),\n",
" (123030, u'ublock0:sb:466'),\n",
" (123030, u'ublock0:sb:465'),\n",
" (123030, u'ublock0:sb:464'),\n",
" (123030, u'ublock0:sb:463'),\n",
" (123030, u'ublock0:sb:462'),\n",
" (123030, u'ublock0:sb:461'),\n",
" (123030, u'ublock0:sb:460'),\n",
" (123030, u'ublock0:sb:46'),\n",
" (123030, u'ublock0:sb:459'),\n",
" (123030, u'ublock0:sb:458'),\n",
" (123030, u'ublock0:sb:457'),\n",
" (123030, u'ublock0:sb:456'),\n",
" (123030, u'ublock0:sb:455'),\n",
" (123030, u'ublock0:sb:454'),\n",
" (123030, u'ublock0:sb:453'),\n",
" (123030, u'ublock0:sb:452'),\n",
" (123030, u'ublock0:sb:451'),\n",
" (123030, u'ublock0:sb:450'),\n",
" (123030, u'ublock0:sb:45'),\n",
" (123030, u'ublock0:sb:449'),\n",
" (123030, u'ublock0:sb:448'),\n",
" (123030, u'ublock0:sb:447'),\n",
" (123030, u'ublock0:sb:446'),\n",
" (123030, u'ublock0:sb:445'),\n",
" (123030, u'ublock0:sb:444'),\n",
" (123030, u'ublock0:sb:443'),\n",
" (123030, u'ublock0:sb:442'),\n",
" (123030, u'ublock0:sb:441'),\n",
" (123030, u'ublock0:sb:440'),\n",
" (123030, u'ublock0:sb:44'),\n",
" (123030, u'ublock0:sb:439'),\n",
" (123030, u'ublock0:sb:438'),\n",
" (123030, u'ublock0:sb:437'),\n",
" (123030, u'ublock0:sb:436'),\n",
" (123030, u'ublock0:sb:435'),\n",
" (123030, u'ublock0:sb:434'),\n",
" (123030, u'ublock0:sb:433'),\n",
" (123030, u'ublock0:sb:432'),\n",
" (123030, u'ublock0:sb:431'),\n",
" (123030, u'ublock0:sb:430'),\n",
" (123030, u'ublock0:sb:43'),\n",
" (123030, u'ublock0:sb:429'),\n",
" (123030, u'ublock0:sb:428'),\n",
" (123030, u'ublock0:sb:427'),\n",
" (123030, u'ublock0:sb:426'),\n",
" (123030, u'ublock0:sb:425'),\n",
" (123030, u'ublock0:sb:424'),\n",
" (123030, u'ublock0:sb:423'),\n",
" (123030, u'ublock0:sb:422'),\n",
" (123030, u'ublock0:sb:421'),\n",
" (123030, u'ublock0:sb:420'),\n",
" (123030, u'ublock0:sb:42'),\n",
" (123030, u'ublock0:sb:419'),\n",
" (123030, u'ublock0:sb:418'),\n",
" (123030, u'ublock0:sb:417'),\n",
" (123030, u'ublock0:sb:416'),\n",
" (123030, u'ublock0:sb:415'),\n",
" (123030, u'ublock0:sb:414'),\n",
" (123030, u'ublock0:sb:413'),\n",
" (123030, u'ublock0:sb:412'),\n",
" (123030, u'ublock0:sb:411'),\n",
" (123030, u'ublock0:sb:410'),\n",
" (123030, u'ublock0:sb:41'),\n",
" (123030, u'ublock0:sb:409'),\n",
" (123030, u'ublock0:sb:408'),\n",
" (123030, u'ublock0:sb:407'),\n",
" (123030, u'ublock0:sb:406'),\n",
" (123030, u'ublock0:sb:405'),\n",
" (123030, u'ublock0:sb:404'),\n",
" (123030, u'ublock0:sb:403'),\n",
" (123030, u'ublock0:sb:402'),\n",
" (123030, u'ublock0:sb:401'),\n",
" (123030, u'ublock0:sb:400'),\n",
" (123030, u'ublock0:sb:40'),\n",
" (123030, u'ublock0:sb:399'),\n",
" (123030, u'ublock0:sb:398'),\n",
" (123030, u'ublock0:sb:397'),\n",
" (123030, u'ublock0:sb:396'),\n",
" (123030, u'ublock0:sb:395'),\n",
" (123030, u'ublock0:sb:394'),\n",
" (123030, u'ublock0:sb:393'),\n",
" (123030, u'ublock0:sb:392'),\n",
" (123030, u'ublock0:sb:391'),\n",
" (123030, u'ublock0:sb:390'),\n",
" (123030, u'ublock0:sb:39'),\n",
" (123030, u'ublock0:sb:389'),\n",
" (123030, u'ublock0:sb:388'),\n",
" (123030, u'ublock0:sb:387'),\n",
" (123030, u'ublock0:sb:386'),\n",
" (123030, u'ublock0:sb:385'),\n",
" (123030, u'ublock0:sb:384'),\n",
" (123030, u'ublock0:sb:383'),\n",
" (123030, u'ublock0:sb:382'),\n",
" (123030, u'ublock0:sb:381'),\n",
" (123030, u'ublock0:sb:380'),\n",
" (123030, u'ublock0:sb:38'),\n",
" (123030, u'ublock0:sb:379'),\n",
" (123030, u'ublock0:sb:378'),\n",
" (123030, u'ublock0:sb:377'),\n",
" (123030, u'ublock0:sb:376'),\n",
" (123030, u'ublock0:sb:375'),\n",
" (123030, u'ublock0:sb:374'),\n",
" (123030, u'ublock0:sb:373'),\n",
" (123030, u'ublock0:sb:372'),\n",
" (123030, u'ublock0:sb:371'),\n",
" (123030, u'ublock0:sb:370'),\n",
" (123030, u'ublock0:sb:37'),\n",
" (123030, u'ublock0:sb:369'),\n",
" (123030, u'ublock0:sb:368'),\n",
" (123030, u'ublock0:sb:367'),\n",
" (123030, u'ublock0:sb:366'),\n",
" (123030, u'ublock0:sb:365'),\n",
" (123030, u'ublock0:sb:364'),\n",
" (123030, u'ublock0:sb:363'),\n",
" (123030, u'ublock0:sb:362'),\n",
" (123030, u'ublock0:sb:361'),\n",
" (123030, u'ublock0:sb:360'),\n",
" (123030, u'ublock0:sb:36'),\n",
" (123030, u'ublock0:sb:359'),\n",
" ...]"
]
},
"execution_count": 30,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sorted([ (v, k) for (k, v) in mm_maxes.items() ], reverse=True)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.11"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment