{"paragraphs":[{"text":"%md\n\nStep 1. Get your OAuth Credentials from [apps.twitter.com](https://apps.twitter.com/)\n","dateUpdated":"2016-10-25T11:58:47+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true,"editorMode":"ace/mode/markdown"},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477439870349_-520601802","id":"20161025-235750_-939886635","result":{"code":"SUCCESS","type":"HTML","msg":"

Step 1. Get your OAuth Credentials from apps.twitter.com

\n"},"dateCreated":"2016-10-25T11:57:50+0000","dateStarted":"2016-10-25T11:58:48+0000","dateFinished":"2016-10-25T11:58:50+0000","status":"FINISHED","progressUpdateIntervalMs":500,"focus":true,"$$hashKey":"object:278"},{"title":"Dependency Loader","text":"%spark.dep\nz.addRepo(\"apache-snapshots\").url(\"https://repository.apache.org/content/repositories/snapshots\").snapshot()\nz.load(\"org.apache.streams:streams-provider-twitter:0.4-incubating-SNAPSHOT\")\nz.load(\"org.apache.streams:streams-converters:0.4-incubating-SNAPSHOT\")","dateUpdated":"2016-10-28T13:36:32+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true,"editorMode":"ace/mode/scala","title":true},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477439360400_267640902","id":"20161025-234920_-1461959171","result":{"code":"ERROR","type":"TEXT","msg":"Must be used before SparkInterpreter (%spark) initialized\nHint: put this paragraph before any Spark code and restart Zeppelin/Interpreter"},"dateCreated":"2016-10-25T11:49:20+0000","dateStarted":"2016-10-28T13:36:33+0000","dateFinished":"2016-10-28T13:36:33+0000","status":"ERROR","progressUpdateIntervalMs":500,"$$hashKey":"object:279","focus":true},{"title":"Build 'hocon', the Apache Streams Config","text":"%spark\n\nval consumerKey = z.input(\"ConsumerKey\", \"\")\nval consumerSecret = z.input(\"ConsumerSecret\", \"\")\nval accessToken = z.input(\"AccessToken\", \"\")\nval accessTokenSecret = z.input(\"AccessTokenSecret\", \"\")\nval userID = z.input(\"UserID\", \"\")\n\nval hocon = s\"\"\"\n twitter {\n oauth {\n consumerKey = \"$consumerKey\"\n consumerSecret = \"$consumerSecret\"\n accessToken = \"$accessToken\"\n accessTokenSecret = \"$accessTokenSecret\"\n }\n retrySleepMs = 5000\n retryMax = 250\n info = [\n $userID\n ]\n }\n\"\"\"\n","dateUpdated":"2016-10-26T21:50:31+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true,"editorMode":"ace/mode/scala","editorHide":false,"title":true,"tableHide":false},"settings":{"params":{"ConsumerKey":"","ConsumerSecret":"","AccessToken":"","AccessTokenSecret":"","Username":"1566016094","UserID":"1566016094"},"forms":{"ConsumerKey":{"name":"ConsumerKey","displayName":"ConsumerKey","type":"input","defaultValue":"","hidden":false},"ConsumerSecret":{"name":"ConsumerSecret","displayName":"ConsumerSecret","type":"input","defaultValue":"","hidden":false},"AccessToken":{"name":"AccessToken","displayName":"AccessToken","type":"input","defaultValue":"","hidden":false},"AccessTokenSecret":{"name":"AccessTokenSecret","displayName":"AccessTokenSecret","type":"input","defaultValue":"","hidden":false},"UserID":{"name":"UserID","displayName":"UserID","type":"input","defaultValue":"","hidden":false}}},"apps":[],"jobName":"paragraph_1477250022469_546929331","id":"20161023-191342_1492908722","result":{"code":"SUCCESS","type":"TEXT","msg":""},"dateCreated":"2016-10-23T07:13:42+0000","dateStarted":"2016-10-26T21:50:31+0000","dateFinished":"2016-10-26T21:51:13+0000","status":"FINISHED","progressUpdateIntervalMs":500,"$$hashKey":"object:280"},{"title":"Apache Streams Collects Tweets from Timeline","text":"%spark\nimport com.typesafe.config._\nimport org.apache.streams.config._\nimport org.apache.streams.core._\nimport java.util.Iterator\nimport org.apache.streams.twitter.TwitterUserInformationConfiguration\n\n\nimport org.apache.streams.twitter.pojo._\nimport org.apache.streams.twitter.provider._\n\nval timeline_buf = scala.collection.mutable.ArrayBuffer.empty[Object]\n\nval typesafe = ConfigFactory.parseString(hocon)\nval config = new ComponentConfigurator(classOf[TwitterUserInformationConfiguration]).detectConfiguration(typesafe, \"twitter\");\nval provider = new TwitterTimelineProvider(config);\nprovider.prepare(null)\nprovider.startStream()\nwhile(provider.isRunning()) {\n val resultSet = provider.readCurrent()\n resultSet.size()\n val iterator = resultSet.iterator();\n while(iterator.hasNext()) {\n val datum = iterator.next();\n //println(datum.getDocument)\n timeline_buf += datum.getDocument\n } \n}","dateUpdated":"2016-10-26T21:52:04+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true,"editorMode":"ace/mode/markdown","title":true,"editorHide":true},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477420875861_-7931338","id":"20161025-184115_-1493939533","result":{"code":"SUCCESS","type":"TEXT","msg":""},"dateCreated":"2016-10-25T06:41:15+0000","dateStarted":"2016-10-26T21:51:22+0000","dateFinished":"2016-10-26T21:51:36+0000","status":"FINISHED","progressUpdateIntervalMs":500,"$$hashKey":"object:281"},{"text":"%spark\n\nimport org.apache.streams.converter.ActivityConverterProcessor\nimport org.apache.streams.core.StreamsProcessor\nimport org.apache.streams.pojo.json.Activity\nimport scala.collection.JavaConverters\nimport scala.collection.JavaConversions._\n\nval converter = new ActivityConverterProcessor()\nconverter.prepare()\n\nval status_datums = timeline_buf.map(x => new StreamsDatum(x))\nval activity_datums = status_datums.flatMap(x => converter.process(x)).map(x => x.getDocument.asInstanceOf[Activity])\n","dateUpdated":"2016-10-28T13:10:37+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true,"editorMode":"ace/mode/markdown","title":true},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477518189522_-376171716","id":"20161026-214309_-1369615445","result":{"code":"SUCCESS","type":"TEXT","msg":"\nimport org.apache.streams.converter.ActivityConverterProcessor\n\nimport org.apache.streams.core.StreamsProcessor\n\nimport org.apache.streams.pojo.json.Activity\n\nimport scala.collection.JavaConverters\n\nimport scala.collection.JavaConversions._\n\nconverter: org.apache.streams.converter.ActivityConverterProcessor = org.apache.streams.converter.ActivityConverterProcessor@496933ba\n\nstatus_datums: scala.collection.mutable.ArrayBuffer[org.apache.streams.core.StreamsDatum] = \nArrayBuffer(null\tMetadata={}\tTimestamp=null\tSequence=null\tDocument=org.apache.streams.twitter.pojo.Tweet@6c3fa19d[text=RT @Ellen_Friedman: In Ch 3 of new book Intro to #ApacheFlink we explain how Flink provides a better fit to data. Download free pdf https:/…,retweeted=true,inReplyToScreenName=,truncated=false,filterLevel=,contributors=,place=,entities=org.apache.streams.twitter.pojo.Entities@562684cb[userMentions=[org.apache.streams.twitter.pojo.UserMentions@66eb7325[id=294862170,name=(((Ellen Friedman))),indices=[3, 18],screenName=Ellen_Friedman,idStr=294862170,additionalProperties={}]],hashtags=[org.apache.streams.twitter.pojo.Hashtag@35e16f21[text=ApacheFlink,indices=...\nactivity_datums: scala.collection.mutable.ArrayBuffer[org.apache.streams.pojo.json.Activity] = \nArrayBuffer(org.apache.streams.pojo.json.Activity@4b208a33[id=id:twitter:post:790577428150181888,actor=org.apache.streams.pojo.json.Actor@6affaef4[id=id:twitter:1566016094,image=org.apache.streams.pojo.json.Image@32aaaae0[additionalProperties={},duration=,height=,width=,url=https://pbs.twimg.com/profile_images/618753270354309120/z8WaVCs6_normal.jpg,additionalProperties={}],displayName=Trevor Grant,summary=Ain't no data like CPG data because CPG data don't stop.,content=,url=https://t.co/Db4PUkHi2O,objectType=page,author=,published=,updated=,attachments=[],upstreamDuplicates=[],downstreamDuplicates=[],additionalProperties={extensions={favorites=149, fo..."},"dateCreated":"2016-10-26T21:43:09+0000","dateStarted":"2016-10-26T21:53:44+0000","dateFinished":"2016-10-26T21:53:49+0000","status":"FINISHED","progressUpdateIntervalMs":500,"$$hashKey":"object:282","title":"Transform Tweet Objects into Activity Stream Objects"},{"text":"%spark\n","dateUpdated":"2016-10-26T21:54:20+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true,"editorMode":"ace/mode/markdown"},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477518832545_-1902783664","id":"20161026-215352_-233968242","result":{"code":"SUCCESS","type":"TEXT","msg":"res5: org.apache.streams.pojo.json.Activity = org.apache.streams.pojo.json.Activity@4b208a33[id=id:twitter:post:790577428150181888,actor=org.apache.streams.pojo.json.Actor@6affaef4[id=id:twitter:1566016094,image=org.apache.streams.pojo.json.Image@32aaaae0[additionalProperties={},duration=,height=,width=,url=https://pbs.twimg.com/profile_images/618753270354309120/z8WaVCs6_normal.jpg,additionalProperties={}],displayName=Trevor Grant,summary=Ain't no data like CPG data because CPG data don't stop.,content=,url=https://t.co/Db4PUkHi2O,objectType=page,author=,published=,updated=,attachments=[],upstreamDuplicates=[],downstreamDuplicates=[],additionalProperties={extensions={favorites=149, followers=70, location=Chicago, screenName=rawkintrevo, posts=10..."},"dateCreated":"2016-10-26T21:53:52+0000","dateStarted":"2016-10-26T21:54:01+0000","dateFinished":"2016-10-26T21:54:01+0000","status":"FINISHED","progressUpdateIntervalMs":500,"$$hashKey":"object:283"},{"text":"%spark\n\nimport org.apache.streams.jackson.StreamsJacksonMapper;\n\nval mapper = StreamsJacksonMapper.getInstance();\nval activitiesRDD = sc.parallelize(activity_datums.map(o => mapper.writeValueAsString(o)))\n\nval activitiesDF = sqlContext.read.json(activitiesRDD)\n\nactivitiesDF.registerTempTable(\"activities\")","dateUpdated":"2016-10-26T21:55:06+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true,"editorMode":"ace/mode/text"},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477512957626_206264263","id":"20161026-201557_-412985195","result":{"code":"SUCCESS","type":"TEXT","msg":"\nimport org.apache.streams.jackson.StreamsJacksonMapper\n\nmapper: org.apache.streams.jackson.StreamsJacksonMapper = org.apache.streams.jackson.StreamsJacksonMapper@679f729\n\nactivitiesRDD: org.apache.spark.rdd.RDD[String] = ParallelCollectionRDD[1] at parallelize at :73\nactivitiesDF: org.apache.spark.sql.DataFrame = [actor: struct,handle:string,id:string,image:struct,objectType:string,summary:string,url:string>, content: string, hashtags: array, id: string, keywords: string, likes: struct, links: array, location: struct,id:string>, object: struct, provider: struct, published: string, rebroadcasts: struct, title: string, twitter: struct,text:string>>,media:arra..."},"dateCreated":"2016-10-26T08:15:57+0000","dateStarted":"2016-10-26T21:55:07+0000","dateFinished":"2016-10-26T21:55:14+0000","status":"FINISHED","progressUpdateIntervalMs":500,"$$hashKey":"object:284"},{"text":"%spark.sql\n\nselect ht, count(id) as mentions\nfrom (\n select explode(hashtags) as ht, id \n from activities\n ) a\n \ngroup by ht\norder by mentions desc\n","dateUpdated":"2016-10-28T13:31:22+0000","config":{"colWidth":12,"graph":{"mode":"multiBarChart","height":300,"optionOpen":false,"keys":[{"name":"ht","index":0,"aggr":"sum"}],"values":[{"name":"mentions","index":1,"aggr":"sum"}],"groups":[],"scatter":{"xAxis":{"name":"ht","index":0,"aggr":"sum"},"yAxis":{"name":"mentions","index":1,"aggr":"sum"}},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true,"editorMode":"ace/mode/sql","helium":{}},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477517207915_271170215","id":"20161026-212647_1710906776","result":{"code":"SUCCESS","type":"TABLE","msg":"ht\tmentions\nff16\t7\nApacheFlink\t4\nDataScience\t4\nflink\t3\nchicago\t3\nfarmfest\t3\nbigdata\t3\nff15\t3\nchiflink\t3\npizza\t2\nberlin\t2\nlouisvillechuggler\t2\nChicago\t2\ndizzybat\t2\norms\t2\ndeeplearning\t2\nFlinkForward\t2\nDCFlinkMeetup\t2\napachezeppelin\t2\nData\t2\niowa\t1\nlearningfriday\t1\nwaronsharks\t1\nremodeling\t1\nfishsausage\t1\nFlink\t1\nflinkforward16\t1\nbestpanelever\t1\ncollaborate\t1\ndavidthegnome\t1\nMachineLearning\t1\nfullstack\t1\nrockabilly\t1\nresolution2016\t1\neatclean\t1\nguitarsolo\t1\npescatarian\t1\nn8racing\t1\nzeppelin\t1\neveofdestruction\t1\ntecate\t1\ncamping\t1\nworkfromhome\t1\nScala\t1\njohnnybegood\t1\nmermaid\t1\ntraditionaltattoo\t1\narmobile\t1\nwinter\t1\nnofilter\t1\nhomelessnessinamerica\t1\nsundayfunday\t1\nMarkovmodel\t1\nmalort\t1\nsausage\t1\nclearme\t1\nmovingday\t1\nsundaymorning\t1\nmichaelmonroegoodman\t1\nTSA\t1\nThisWeekInScala\t1\nonesies\t1\nbluegrass\t1\nthisisgarbage\t1\ncountrymusic\t1\ncarrols\t1\ncominginhot\t1\nlinearalgebra\t1\nchaflink\t1\ndigitalmarketing\t1\n","comment":"","msgTable":[[{"key":"mentions","value":"ff16"},{"key":"mentions","value":7}],[{"value":"ApacheFlink"},{"value":4}],[{"value":"DataScience"},{"value":4}],[{"value":"flink"},{"value":3}],[{"value":"chicago"},{"value":3}],[{"value":"farmfest"},{"value":3}],[{"value":"bigdata"},{"value":3}],[{"value":"ff15"},{"value":3}],[{"value":"chiflink"},{"value":3}],[{"value":"pizza"},{"value":2}],[{"value":"berlin"},{"value":2}],[{"value":"louisvillechuggler"},{"value":2}],[{"value":"Chicago"},{"value":2}],[{"value":"dizzybat"},{"value":2}],[{"value":"orms"},{"value":2}],[{"value":"deeplearning"},{"value":2}],[{"value":"FlinkForward"},{"value":2}],[{"value":"DCFlinkMeetup"},{"value":2}],[{"value":"apachezeppelin"},{"value":2}],[{"value":"Data"},{"value":2}],[{"value":"iowa"},{"value":1}],[{"value":"learningfriday"},{"value":1}],[{"value":"waronsharks"},{"value":1}],[{"value":"remodeling"},{"value":1}],[{"value":"fishsausage"},{"value":1}],[{"value":"Flink"},{"value":1}],[{"value":"flinkforward16"},{"value":1}],[{"value":"bestpanelever"},{"value":1}],[{"value":"collaborate"},{"value":1}],[{"value":"davidthegnome"},{"value":1}],[{"value":"MachineLearning"},{"value":1}],[{"value":"fullstack"},{"value":1}],[{"value":"rockabilly"},{"value":1}],[{"value":"resolution2016"},{"value":1}],[{"value":"eatclean"},{"value":1}],[{"value":"guitarsolo"},{"value":1}],[{"value":"pescatarian"},{"value":1}],[{"value":"n8racing"},{"value":1}],[{"value":"zeppelin"},{"value":1}],[{"value":"eveofdestruction"},{"value":1}],[{"value":"tecate"},{"value":1}],[{"value":"camping"},{"value":1}],[{"value":"workfromhome"},{"value":1}],[{"value":"Scala"},{"value":1}],[{"value":"johnnybegood"},{"value":1}],[{"value":"mermaid"},{"value":1}],[{"value":"traditionaltattoo"},{"value":1}],[{"value":"armobile"},{"value":1}],[{"value":"winter"},{"value":1}],[{"value":"nofilter"},{"value":1}],[{"value":"homelessnessinamerica"},{"value":1}],[{"value":"sundayfunday"},{"value":1}],[{"value":"Markovmodel"},{"value":1}],[{"value":"malort"},{"value":1}],[{"value":"sausage"},{"value":1}],[{"value":"clearme"},{"value":1}],[{"value":"movingday"},{"value":1}],[{"value":"sundaymorning"},{"value":1}],[{"value":"michaelmonroegoodman"},{"value":1}],[{"value":"TSA"},{"value":1}],[{"value":"ThisWeekInScala"},{"value":1}],[{"value":"onesies"},{"value":1}],[{"value":"bluegrass"},{"value":1}],[{"value":"thisisgarbage"},{"value":1}],[{"value":"countrymusic"},{"value":1}],[{"value":"carrols"},{"value":1}],[{"value":"cominginhot"},{"value":1}],[{"value":"linearalgebra"},{"value":1}],[{"value":"chaflink"},{"value":1}],[{"value":"digitalmarketing"},{"value":1}]],"columnNames":[{"name":"ht","index":0,"aggr":"sum"},{"name":"mentions","index":1,"aggr":"sum"}],"rows":[["ff16",7],["ApacheFlink",4],["DataScience",4],["flink",3],["chicago",3],["farmfest",3],["bigdata",3],["ff15",3],["chiflink",3],["pizza",2],["berlin",2],["louisvillechuggler",2],["Chicago",2],["dizzybat",2],["orms",2],["deeplearning",2],["FlinkForward",2],["DCFlinkMeetup",2],["apachezeppelin",2],["Data",2],["iowa",1],["learningfriday",1],["waronsharks",1],["remodeling",1],["fishsausage",1],["Flink",1],["flinkforward16",1],["bestpanelever",1],["collaborate",1],["davidthegnome",1],["MachineLearning",1],["fullstack",1],["rockabilly",1],["resolution2016",1],["eatclean",1],["guitarsolo",1],["pescatarian",1],["n8racing",1],["zeppelin",1],["eveofdestruction",1],["tecate",1],["camping",1],["workfromhome",1],["Scala",1],["johnnybegood",1],["mermaid",1],["traditionaltattoo",1],["armobile",1],["winter",1],["nofilter",1],["homelessnessinamerica",1],["sundayfunday",1],["Markovmodel",1],["malort",1],["sausage",1],["clearme",1],["movingday",1],["sundaymorning",1],["michaelmonroegoodman",1],["TSA",1],["ThisWeekInScala",1],["onesies",1],["bluegrass",1],["thisisgarbage",1],["countrymusic",1],["carrols",1],["cominginhot",1],["linearalgebra",1],["chaflink",1],["digitalmarketing",1]]},"dateCreated":"2016-10-26T21:26:47+0000","dateStarted":"2016-10-26T22:04:50+0000","dateFinished":"2016-10-26T22:04:51+0000","status":"FINISHED","progressUpdateIntervalMs":500,"$$hashKey":"object:285"},{"text":"%spark\n\nactivitiesDF.printSchema() ","dateUpdated":"2016-10-26T21:56:35+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true,"editorMode":"ace/mode/scala"},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477518926807_531876727","id":"20161026-215526_946201414","result":{"code":"SUCCESS","type":"TEXT","msg":"root\n |-- actor: struct (nullable = true)\n | |-- displayName: string (nullable = true)\n | |-- extensions: struct (nullable = true)\n | | |-- favorites: long (nullable = true)\n | | |-- followers: long (nullable = true)\n | | |-- location: string (nullable = true)\n | | |-- posts: long (nullable = true)\n | | |-- screenName: string (nullable = true)\n | |-- handle: string (nullable = true)\n | |-- id: string (nullable = true)\n | |-- image: struct (nullable = true)\n | | |-- url: string (nullable = true)\n | |-- objectType: string (nullable = true)\n | |-- summary: string (nullable = true)\n | |-- url: string (nullable = true)\n |-- content: string (nullable = true)\n |-- hashtags: array (nullable = true)\n | |-- element: string (containsNull = true)\n |-- id: string (nullable = true)\n |-- keywords: string (nullable = true)\n |-- likes: struct (nullable = true)\n | |-- perspectival: boolean (nullable = true)\n |-- links: array (nullable = true)\n | |-- element: string (containsNull = true)\n |-- location: struct (nullable = true)\n | |-- coordinates: array (nullable = true)\n | | |-- element: string (containsNull = true)\n | |-- id: string (nullable = true)\n |-- object: struct (nullable = true)\n | |-- content: string (nullable = true)\n | |-- id: string (nullable = true)\n | |-- objectType: string (nullable = true)\n |-- provider: struct (nullable = true)\n | |-- displayName: string (nullable = true)\n | |-- id: string (nullable = true)\n | |-- objectType: string (nullable = true)\n |-- published: string (nullable = true)\n |-- rebroadcasts: struct (nullable = true)\n | |-- count: long (nullable = true)\n | |-- perspectival: boolean (nullable = true)\n |-- title: string (nullable = true)\n |-- twitter: struct (nullable = true)\n | |-- created_at: string (nullable = true)\n | |-- entities: struct (nullable = true)\n | | |-- hashtags: array (nullable = true)\n | | | |-- element: struct (containsNull = true)\n | | | | |-- indices: array (nullable = true)\n | | | | | |-- element: long (containsNull = true)\n | | | | |-- text: string (nullable = true)\n | | |-- media: array (nullable = true)\n | | | |-- element: struct (containsNull = true)\n | | | | |-- display_url: string (nullable = true)\n | | | | |-- expanded_url: string (nullable = true)\n | | | | |-- id: long (nullable = true)\n | | | | |-- id_str: string (nullable = true)\n | | | | |-- indices: array (nullable = true)\n | | | | | |-- element: long (containsNull = true)\n | | | | |-- media_url: string (nullable = true)\n | | | | |-- media_url_https: string (nullable = true)\n | | | | |-- sizes: struct (nullable = true)\n | | | | | |-- large: struct (nullable = true)\n | | | | | | |-- h: long (nullable = true)\n | | | | | | |-- resize: string (nullable = true)\n | | | | | | |-- w: long (nullable = true)\n | | | | | |-- medium: struct (nullable = true)\n | | | | | | |-- h: long (nullable = true)\n | | | | | | |-- resize: string (nullable = true)\n | | | | | | |-- w: long (nullable = true)\n | | | | | |-- small: struct (nullable = true)\n | | | | | | |-- h: long (nullable = true)\n | | | | | | |-- resize: string (nullable = true)\n | | | | | | |-- w: long (nullable = true)\n | | | | | |-- thumb: struct (nullable = true)\n | | | | | | |-- h: long (nullable = true)\n | | | | | | |-- resize: string (nullable = true)\n | | | | | | |-- w: long (nullable = true)\n | | | | |-- source_status_id: long (nullable = true)\n | | | | |-- source_status_id_str: string (nullable = true)\n | | | | |-- source_user_id: long (nullable = true)\n | | | | |-- source_user_id_str: string (nullable = true)\n | | | | |-- type: string (nullable = true)\n | | | | |-- url: string (nullable = true)\n | | |-- symbols: array (nullable = true)\n | | | |-- element: string (containsNull = true)\n | | |-- urls: array (nullable = true)\n | | | |-- element: struct (containsNull = true)\n | | | | |-- display_url: string (nullable = true)\n | | | | |-- expanded_url: string (nullable = true)\n | | | | |-- indices: array (nullable = true)\n | | | | | |-- element: long (containsNull = true)\n | | | | |-- url: string (nullable = true)\n | | |-- user_mentions: array (nullable = true)\n | | | |-- element: struct (containsNull = true)\n | | | | |-- id: long (nullable = true)\n | | | | |-- id_str: string (nullable = true)\n | | | | |-- indices: array (nullable = true)\n | | | | | |-- element: long (containsNull = true)\n | | | | |-- name: string (nullable = true)\n | | | | |-- screen_name: string (nullable = true)\n | |-- extended_entities: struct (nullable = true)\n | | |-- media: array (nullable = true)\n | | | |-- element: struct (containsNull = true)\n | | | | |-- display_url: string (nullable = true)\n | | | | |-- expanded_url: string (nullable = true)\n | | | | |-- id: long (nullable = true)\n | | | | |-- id_str: string (nullable = true)\n | | | | |-- indices: array (nullable = true)\n | | | | | |-- element: long (containsNull = true)\n | | | | |-- media_url: string (nullable = true)\n | | | | |-- media_url_https: string (nullable = true)\n | | | | |-- sizes: struct (nullable = true)\n | | | | | |-- large: struct (nullable = true)\n | | | | | | |-- h: long (nullable = true)\n | | | | | | |-- resize: string (nullable = true)\n | | | | | | |-- w: long (nullable = true)\n | | | | | |-- medium: struct (nullable = true)\n | | | | | | |-- h: long (nullable = true)\n | | | | | | |-- resize: string (nullable = true)\n | | | | | | |-- w: long (nullable = true)\n | | | | | |-- small: struct (nullable = true)\n | | | | | | |-- h: long (nullable = true)\n | | | | | | |-- resize: string (nullable = true)\n | | | | | | |-- w: long (nullable = true)\n | | | | | |-- thumb: struct (nullable = true)\n | | | | | | |-- h: long (nullable = true)\n | | | | | | |-- resize: string (nullable = true)\n | | | | | | |-- w: long (nullable = true)\n | | | | |-- source_status_id: long (nullable = true)\n | | | | |-- source_status_id_str: string (nullable = true)\n | | | | |-- source_user_id: long (nullable = true)\n | | | | |-- source_user_id_str: string (nullable = true)\n | | | | |-- type: string (nullable = true)\n | | | | |-- url: string (nullable = true)\n | |-- favorite_count: long (nullable = true)\n | |-- favorited: boolean (nullable = true)\n | |-- id: long (nullable = true)\n | |-- id_str: string (nullable = true)\n | |-- in_reply_to_screen_name: string (nullable = true)\n | |-- in_reply_to_status_id: long (nullable = true)\n | |-- in_reply_to_status_id_str: string (nullable = true)\n | |-- in_reply_to_user_id: long (nullable = true)\n | |-- in_reply_to_user_id_str: string (nullable = true)\n | |-- is_quote_status: boolean (nullable = true)\n | |-- lang: string (nullable = true)\n | |-- possibly_sensitive: boolean (nullable = true)\n | |-- quoted_status: struct (nullable = true)\n | | |-- created_at: string (nullable = true)\n | | |-- entities: struct (nullable = true)\n | | | |-- hashtags: array (nullable = true)\n | | | | |-- element: struct (containsNull = true)\n | | | | | |-- indices: array (nullable = true)\n | | | | | | |-- element: long (containsNull = true)\n | | | | | |-- text: string (nullable = true)\n | | | |-- media: array (nullable = true)\n | | | | |-- element: struct (containsNull = true)\n | | | | | |-- display_url: string (nullable = true)\n | | | | | |-- expanded_url: string (nullable = true)\n | | | | | |-- id: long (nullable = true)\n | | | | | |-- id_str: string (nullable = true)\n | | | | | |-- indices: array (nullable = true)\n | | | | | | |-- element: long (containsNull = true)\n | | | | | |-- media_url: string (nullable = true)\n | | | | | |-- media_url_https: string (nullable = true)\n | | | | | |-- sizes: struct (nullable = true)\n | | | | | | |-- large: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | | |-- medium: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | | |-- small: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | | |-- thumb: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | |-- type: string (nullable = true)\n | | | | | |-- url: string (nullable = true)\n | | | |-- symbols: array (nullable = true)\n | | | | |-- element: string (containsNull = true)\n | | | |-- urls: array (nullable = true)\n | | | | |-- element: struct (containsNull = true)\n | | | | | |-- display_url: string (nullable = true)\n | | | | | |-- expanded_url: string (nullable = true)\n | | | | | |-- indices: array (nullable = true)\n | | | | | | |-- element: long (containsNull = true)\n | | | | | |-- url: string (nullable = true)\n | | | |-- user_mentions: array (nullable = true)\n | | | | |-- element: struct (containsNull = true)\n | | | | | |-- id: long (nullable = true)\n | | | | | |-- id_str: string (nullable = true)\n | | | | | |-- indices: array (nullable = true)\n | | | | | | |-- element: long (containsNull = true)\n | | | | | |-- name: string (nullable = true)\n | | | | | |-- screen_name: string (nullable = true)\n | | |-- extended_entities: struct (nullable = true)\n | | | |-- media: array (nullable = true)\n | | | | |-- element: struct (containsNull = true)\n | | | | | |-- display_url: string (nullable = true)\n | | | | | |-- expanded_url: string (nullable = true)\n | | | | | |-- id: long (nullable = true)\n | | | | | |-- id_str: string (nullable = true)\n | | | | | |-- indices: array (nullable = true)\n | | | | | | |-- element: long (containsNull = true)\n | | | | | |-- media_url: string (nullable = true)\n | | | | | |-- media_url_https: string (nullable = true)\n | | | | | |-- sizes: struct (nullable = true)\n | | | | | | |-- large: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | | |-- medium: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | | |-- small: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | | |-- thumb: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | |-- type: string (nullable = true)\n | | | | | |-- url: string (nullable = true)\n | | |-- favorite_count: long (nullable = true)\n | | |-- favorited: boolean (nullable = true)\n | | |-- id: long (nullable = true)\n | | |-- id_str: string (nullable = true)\n | | |-- in_reply_to_screen_name: string (nullable = true)\n | | |-- in_reply_to_user_id: long (nullable = true)\n | | |-- in_reply_to_user_id_str: string (nullable = true)\n | | |-- is_quote_status: boolean (nullable = true)\n | | |-- lang: string (nullable = true)\n | | |-- place: struct (nullable = true)\n | | | |-- bounding_box: struct (nullable = true)\n | | | | |-- coordinates: array (nullable = true)\n | | | | | |-- element: array (containsNull = true)\n | | | | | | |-- element: array (containsNull = true)\n | | | | | | | |-- element: double (containsNull = true)\n | | | | |-- type: string (nullable = true)\n | | | |-- contained_within: array (nullable = true)\n | | | | |-- element: string (containsNull = true)\n | | | |-- country: string (nullable = true)\n | | | |-- country_code: string (nullable = true)\n | | | |-- full_name: string (nullable = true)\n | | | |-- id: string (nullable = true)\n | | | |-- name: string (nullable = true)\n | | | |-- place_type: string (nullable = true)\n | | | |-- url: string (nullable = true)\n | | |-- possibly_sensitive: boolean (nullable = true)\n | | |-- quoted_status_id: long (nullable = true)\n | | |-- quoted_status_id_str: string (nullable = true)\n | | |-- retweet_count: long (nullable = true)\n | | |-- retweeted: boolean (nullable = true)\n | | |-- source: string (nullable = true)\n | | |-- text: string (nullable = true)\n | | |-- truncated: boolean (nullable = true)\n | | |-- user: struct (nullable = true)\n | | | |-- contributors_enabled: boolean (nullable = true)\n | | | |-- created_at: string (nullable = true)\n | | | |-- default_profile: boolean (nullable = true)\n | | | |-- default_profile_image: boolean (nullable = true)\n | | | |-- description: string (nullable = true)\n | | | |-- entities: struct (nullable = true)\n | | | | |-- description: struct (nullable = true)\n | | | | | |-- urls: array (nullable = true)\n | | | | | | |-- element: struct (containsNull = true)\n | | | | | | | |-- display_url: string (nullable = true)\n | | | | | | | |-- expanded_url: string (nullable = true)\n | | | | | | | |-- indices: array (nullable = true)\n | | | | | | | | |-- element: long (containsNull = true)\n | | | | | | | |-- url: string (nullable = true)\n | | | | |-- url: struct (nullable = true)\n | | | | | |-- urls: array (nullable = true)\n | | | | | | |-- element: struct (containsNull = true)\n | | | | | | | |-- display_url: string (nullable = true)\n | | | | | | | |-- expanded_url: string (nullable = true)\n | | | | | | | |-- indices: array (nullable = true)\n | | | | | | | | |-- element: long (containsNull = true)\n | | | | | | | |-- url: string (nullable = true)\n | | | |-- favourites_count: long (nullable = true)\n | | | |-- follow_request_sent: boolean (nullable = true)\n | | | |-- followers_count: long (nullable = true)\n | | | |-- following: boolean (nullable = true)\n | | | |-- friends_count: long (nullable = true)\n | | | |-- geo_enabled: boolean (nullable = true)\n | | | |-- has_extended_profile: boolean (nullable = true)\n | | | |-- id: long (nullable = true)\n | | | |-- id_str: string (nullable = true)\n | | | |-- is_translation_enabled: boolean (nullable = true)\n | | | |-- is_translator: boolean (nullable = true)\n | | | |-- lang: string (nullable = true)\n | | | |-- listed_count: long (nullable = true)\n | | | |-- location: string (nullable = true)\n | | | |-- name: string (nullable = true)\n | | | |-- notifications: boolean (nullable = true)\n | | | |-- profile_background_color: string (nullable = true)\n | | | |-- profile_background_image_url: string (nullable = true)\n | | | |-- profile_background_image_url_https: string (nullable = true)\n | | | |-- profile_background_tile: boolean (nullable = true)\n | | | |-- profile_banner_url: string (nullable = true)\n | | | |-- profile_image_url: string (nullable = true)\n | | | |-- profile_image_url_https: string (nullable = true)\n | | | |-- profile_link_color: string (nullable = true)\n | | | |-- profile_sidebar_border_color: string (nullable = true)\n | | | |-- profile_sidebar_fill_color: string (nullable = true)\n | | | |-- profile_text_color: string (nullable = true)\n | | | |-- profile_use_background_image: boolean (nullable = true)\n | | | |-- protected: boolean (nullable = true)\n | | | |-- screen_name: string (nullable = true)\n | | | |-- statuses_count: long (nullable = true)\n | | | |-- time_zone: string (nullable = true)\n | | | |-- translator_type: string (nullable = true)\n | | | |-- url: string (nullable = true)\n | | | |-- utc_offset: long (nullable = true)\n | | | |-- verified: boolean (nullable = true)\n | |-- quoted_status_id: long (nullable = true)\n | |-- quoted_status_id_str: string (nullable = true)\n | |-- retweet_count: long (nullable = true)\n | |-- retweeted: boolean (nullable = true)\n | |-- retweeted_status: struct (nullable = true)\n | | |-- created_at: string (nullable = true)\n | | |-- entities: struct (nullable = true)\n | | | |-- hashtags: array (nullable = true)\n | | | | |-- element: struct (containsNull = true)\n | | | | | |-- indices: array (nullable = true)\n | | | | | | |-- element: long (containsNull = true)\n | | | | | |-- text: string (nullable = true)\n | | | |-- media: array (nullable = true)\n | | | | |-- element: struct (containsNull = true)\n | | | | | |-- display_url: string (nullable = true)\n | | | | | |-- expanded_url: string (nullable = true)\n | | | | | |-- id: long (nullable = true)\n | | | | | |-- id_str: string (nullable = true)\n | | | | | |-- indices: array (nullable = true)\n | | | | | | |-- element: long (containsNull = true)\n | | | | | |-- media_url: string (nullable = true)\n | | | | | |-- media_url_https: string (nullable = true)\n | | | | | |-- sizes: struct (nullable = true)\n | | | | | | |-- large: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | | |-- medium: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | | |-- small: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | | |-- thumb: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | |-- type: string (nullable = true)\n | | | | | |-- url: string (nullable = true)\n | | | |-- symbols: array (nullable = true)\n | | | | |-- element: string (containsNull = true)\n | | | |-- urls: array (nullable = true)\n | | | | |-- element: struct (containsNull = true)\n | | | | | |-- display_url: string (nullable = true)\n | | | | | |-- expanded_url: string (nullable = true)\n | | | | | |-- indices: array (nullable = true)\n | | | | | | |-- element: long (containsNull = true)\n | | | | | |-- url: string (nullable = true)\n | | | |-- user_mentions: array (nullable = true)\n | | | | |-- element: struct (containsNull = true)\n | | | | | |-- id: long (nullable = true)\n | | | | | |-- id_str: string (nullable = true)\n | | | | | |-- indices: array (nullable = true)\n | | | | | | |-- element: long (containsNull = true)\n | | | | | |-- name: string (nullable = true)\n | | | | | |-- screen_name: string (nullable = true)\n | | |-- extended_entities: struct (nullable = true)\n | | | |-- media: array (nullable = true)\n | | | | |-- element: struct (containsNull = true)\n | | | | | |-- display_url: string (nullable = true)\n | | | | | |-- expanded_url: string (nullable = true)\n | | | | | |-- id: long (nullable = true)\n | | | | | |-- id_str: string (nullable = true)\n | | | | | |-- indices: array (nullable = true)\n | | | | | | |-- element: long (containsNull = true)\n | | | | | |-- media_url: string (nullable = true)\n | | | | | |-- media_url_https: string (nullable = true)\n | | | | | |-- sizes: struct (nullable = true)\n | | | | | | |-- large: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | | |-- medium: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | | |-- small: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | | |-- thumb: struct (nullable = true)\n | | | | | | | |-- h: long (nullable = true)\n | | | | | | | |-- resize: string (nullable = true)\n | | | | | | | |-- w: long (nullable = true)\n | | | | | |-- type: string (nullable = true)\n | | | | | |-- url: string (nullable = true)\n | | |-- favorite_count: long (nullable = true)\n | | |-- favorited: boolean (nullable = true)\n | | |-- id: long (nullable = true)\n | | |-- id_str: string (nullable = true)\n | | |-- in_reply_to_screen_name: string (nullable = true)\n | | |-- in_reply_to_user_id: long (nullable = true)\n | | |-- in_reply_to_user_id_str: string (nullable = true)\n | | |-- is_quote_status: boolean (nullable = true)\n | | |-- lang: string (nullable = true)\n | | |-- possibly_sensitive: boolean (nullable = true)\n | | |-- quoted_status: struct (nullable = true)\n | | | |-- created_at: string (nullable = true)\n | | | |-- entities: struct (nullable = true)\n | | | | |-- hashtags: array (nullable = true)\n | | | | | |-- element: struct (containsNull = true)\n | | | | | | |-- indices: array (nullable = true)\n | | | | | | | |-- element: long (containsNull = true)\n | | | | | | |-- text: string (nullable = true)\n | | | | |-- symbols: array (nullable = true)\n | | | | | |-- element: string (containsNull = true)\n | | | | |-- urls: array (nullable = true)\n | | | | | |-- element: struct (containsNull = true)\n | | | | | | |-- display_url: string (nullable = true)\n | | | | | | |-- expanded_url: string (nullable = true)\n | | | | | | |-- indices: array (nullable = true)\n | | | | | | | |-- element: long (containsNull = true)\n | | | | | | |-- url: string (nullable = true)\n | | | | |-- user_mentions: array (nullable = true)\n | | | | | |-- element: struct (containsNull = true)\n | | | | | | |-- id: long (nullable = true)\n | | | | | | |-- id_str: string (nullable = true)\n | | | | | | |-- indices: array (nullable = true)\n | | | | | | | |-- element: long (containsNull = true)\n | | | | | | |-- name: string (nullable = true)\n | | | | | | |-- screen_name: string (nullable = true)\n | | | |-- favorite_count: long (nullable = true)\n | | | |-- favorited: boolean (nullable = true)\n | | | |-- id: long (nullable = true)\n | | | |-- id_str: string (nullable = true)\n | | | |-- in_reply_to_screen_name: string (nullable = true)\n | | | |-- in_reply_to_status_id: long (nullable = true)\n | | | |-- in_reply_to_status_id_str: string (nullable = true)\n | | | |-- in_reply_to_user_id: long (nullable = true)\n | | | |-- in_reply_to_user_id_str: string (nullable = true)\n | | | |-- is_quote_status: boolean (nullable = true)\n | | | |-- lang: string (nullable = true)\n | | | |-- possibly_sensitive: boolean (nullable = true)\n | | | |-- retweet_count: long (nullable = true)\n | | | |-- retweeted: boolean (nullable = true)\n | | | |-- source: string (nullable = true)\n | | | |-- text: string (nullable = true)\n | | | |-- truncated: boolean (nullable = true)\n | | | |-- user: struct (nullable = true)\n | | | | |-- contributors_enabled: boolean (nullable = true)\n | | | | |-- created_at: string (nullable = true)\n | | | | |-- default_profile: boolean (nullable = true)\n | | | | |-- default_profile_image: boolean (nullable = true)\n | | | | |-- description: string (nullable = true)\n | | | | |-- entities: struct (nullable = true)\n | | | | | |-- description: struct (nullable = true)\n | | | | | | |-- urls: array (nullable = true)\n | | | | | | | |-- element: string (containsNull = true)\n | | | | | |-- url: struct (nullable = true)\n | | | | | | |-- urls: array (nullable = true)\n | | | | | | | |-- element: struct (containsNull = true)\n | | | | | | | | |-- display_url: string (nullable = true)\n | | | | | | | | |-- expanded_url: string (nullable = true)\n | | | | | | | | |-- indices: array (nullable = true)\n | | | | | | | | | |-- element: long (containsNull = true)\n | | | | | | | | |-- url: string (nullable = true)\n | | | | |-- favourites_count: long (nullable = true)\n | | | | |-- follow_request_sent: boolean (nullable = true)\n | | | | |-- followers_count: long (nullable = true)\n | | | | |-- following: boolean (nullable = true)\n | | | | |-- friends_count: long (nullable = true)\n | | | | |-- geo_enabled: boolean (nullable = true)\n | | | | |-- has_extended_profile: boolean (nullable = true)\n | | | | |-- id: long (nullable = true)\n | | | | |-- id_str: string (nullable = true)\n | | | | |-- is_translation_enabled: boolean (nullable = true)\n | | | | |-- is_translator: boolean (nullable = true)\n | | | | |-- lang: string (nullable = true)\n | | | | |-- listed_count: long (nullable = true)\n | | | | |-- location: string (nullable = true)\n | | | | |-- name: string (nullable = true)\n | | | | |-- notifications: boolean (nullable = true)\n | | | | |-- profile_background_color: string (nullable = true)\n | | | | |-- profile_background_image_url: string (nullable = true)\n | | | | |-- profile_background_image_url_https: string (nullable = true)\n | | | | |-- profile_background_tile: boolean (nullable = true)\n | | | | |-- profile_banner_url: string (nullable = true)\n | | | | |-- profile_image_url: string (nullable = true)\n | | | | |-- profile_image_url_https: string (nullable = true)\n | | | | |-- profile_link_color: string (nullable = true)\n | | | | |-- profile_sidebar_border_color: string (nullable = true)\n | | | | |-- profile_sidebar_fill_color: string (nullable = true)\n | | | | |-- profile_text_color: string (nullable = true)\n | | | | |-- profile_use_background_image: boolean (nullable = true)\n | | | | |-- protected: boolean (nullable = true)\n | | | | |-- screen_name: string (nullable = true)\n | | | | |-- statuses_count: long (nullable = true)\n | | | | |-- time_zone: string (nullable = true)\n | | | | |-- translator_type: string (nullable = true)\n | | | | |-- url: string (nullable = true)\n | | | | |-- utc_offset: long (nullable = true)\n | | | | |-- verified: boolean (nullable = true)\n | | |-- quoted_status_id: long (nullable = true)\n | | |-- quoted_status_id_str: string (nullable = true)\n | | |-- retweet_count: long (nullable = true)\n | | |-- retweeted: boolean (nullable = true)\n | | |-- scopes: struct (nullable = true)\n | | | |-- followers: boolean (nullable = true)\n | | |-- source: string (nullable = true)\n | | |-- text: string (nullable = true)\n | | |-- truncated: boolean (nullable = true)\n | | |-- user: struct (nullable = true)\n | | | |-- contributors_enabled: boolean (nullable = true)\n | | | |-- created_at: string (nullable = true)\n | | | |-- default_profile: boolean (nullable = true)\n | | | |-- default_profile_image: boolean (nullable = true)\n | | | |-- description: string (nullable = true)\n | | | |-- entities: struct (nullable = true)\n | | | | |-- description: struct (nullable = true)\n | | | | | |-- urls: array (nullable = true)\n | | | | | | |-- element: string (containsNull = true)\n | | | | |-- url: struct (nullable = true)\n | | | | | |-- urls: array (nullable = true)\n | | | | | | |-- element: struct (containsNull = true)\n | | | | | | | |-- display_url: string (nullable = true)\n | | | | | | | |-- expanded_url: string (nullable = true)\n | | | | | | | |-- indices: array (nullable = true)\n | | | | | | | | |-- element: long (containsNull = true)\n | | | | | | | |-- url: string (nullable = true)\n | | | |-- favourites_count: long (nullable = true)\n | | | |-- follow_request_sent: boolean (nullable = true)\n | | | |-- followers_count: long (nullable = true)\n | | | |-- following: boolean (nullable = true)\n | | | |-- friends_count: long (nullable = true)\n | | | |-- geo_enabled: boolean (nullable = true)\n | | | |-- has_extended_profile: boolean (nullable = true)\n | | | |-- id: long (nullable = true)\n | | | |-- id_str: string (nullable = true)\n | | | |-- is_translation_enabled: boolean (nullable = true)\n | | | |-- is_translator: boolean (nullable = true)\n | | | |-- lang: string (nullable = true)\n | | | |-- listed_count: long (nullable = true)\n | | | |-- location: string (nullable = true)\n | | | |-- name: string (nullable = true)\n | | | |-- notifications: boolean (nullable = true)\n | | | |-- profile_background_color: string (nullable = true)\n | | | |-- profile_background_image_url: string (nullable = true)\n | | | |-- profile_background_image_url_https: string (nullable = true)\n | | | |-- profile_background_tile: boolean (nullable = true)\n | | | |-- profile_banner_url: string (nullable = true)\n | | | |-- profile_image_url: string (nullable = true)\n | | | |-- profile_image_url_https: string (nullable = true)\n | | | |-- profile_link_color: string (nullable = true)\n | | | |-- profile_sidebar_border_color: string (nullable = true)\n | | | |-- profile_sidebar_fill_color: string (nullable = true)\n | | | |-- profile_text_color: string (nullable = true)\n | | | |-- profile_use_background_image: boolean (nullable = true)\n | | | |-- protected: boolean (nullable = true)\n | | | |-- screen_name: string (nullable = true)\n | | | |-- statuses_count: long (nullable = true)\n | | | |-- time_zone: string (nullable = true)\n | | | |-- translator_type: string (nullable = true)\n | | | |-- url: string (nullable = true)\n | | | |-- utc_offset: long (nullable = true)\n | | | |-- verified: boolean (nullable = true)\n | |-- source: string (nullable = true)\n | |-- text: string (nullable = true)\n | |-- truncated: boolean (nullable = true)\n | |-- user: struct (nullable = true)\n | | |-- contributors_enabled: boolean (nullable = true)\n | | |-- created_at: string (nullable = true)\n | | |-- default_profile: boolean (nullable = true)\n | | |-- default_profile_image: boolean (nullable = true)\n | | |-- description: string (nullable = true)\n | | |-- entities: struct (nullable = true)\n | | | |-- description: struct (nullable = true)\n | | | | |-- urls: array (nullable = true)\n | | | | | |-- element: string (containsNull = true)\n | | | |-- url: struct (nullable = true)\n | | | | |-- urls: array (nullable = true)\n | | | | | |-- element: struct (containsNull = true)\n | | | | | | |-- display_url: string (nullable = true)\n | | | | | | |-- expanded_url: string (nullable = true)\n | | | | | | |-- indices: array (nullable = true)\n | | | | | | | |-- element: long (containsNull = true)\n | | | | | | |-- url: string (nullable = true)\n | | |-- favourites_count: long (nullable = true)\n | | |-- follow_request_sent: boolean (nullable = true)\n | | |-- followers_count: long (nullable = true)\n | | |-- following: boolean (nullable = true)\n | | |-- friends_count: long (nullable = true)\n | | |-- geo_enabled: boolean (nullable = true)\n | | |-- has_extended_profile: boolean (nullable = true)\n | | |-- id: long (nullable = true)\n | | |-- id_str: string (nullable = true)\n | | |-- is_translation_enabled: boolean (nullable = true)\n | | |-- is_translator: boolean (nullable = true)\n | | |-- lang: string (nullable = true)\n | | |-- listed_count: long (nullable = true)\n | | |-- location: string (nullable = true)\n | | |-- name: string (nullable = true)\n | | |-- notifications: boolean (nullable = true)\n | | |-- profile_background_color: string (nullable = true)\n | | |-- profile_background_image_url: string (nullable = true)\n | | |-- profile_background_image_url_https: string (nullable = true)\n | | |-- profile_background_tile: boolean (nullable = true)\n | | |-- profile_banner_url: string (nullable = true)\n | | |-- profile_image_url: string (nullable = true)\n | | |-- profile_image_url_https: string (nullable = true)\n | | |-- profile_link_color: string (nullable = true)\n | | |-- profile_sidebar_border_color: string (nullable = true)\n | | |-- profile_sidebar_fill_color: string (nullable = true)\n | | |-- profile_text_color: string (nullable = true)\n | | |-- profile_use_background_image: boolean (nullable = true)\n | | |-- protected: boolean (nullable = true)\n | | |-- screen_name: string (nullable = true)\n | | |-- statuses_count: long (nullable = true)\n | | |-- time_zone: string (nullable = true)\n | | |-- translator_type: string (nullable = true)\n | | |-- url: string (nullable = true)\n | | |-- utc_offset: long (nullable = true)\n | | |-- verified: boolean (nullable = true)\n |-- url: string (nullable = true)\n |-- user_mentions: array (nullable = true)\n | |-- element: struct (containsNull = true)\n | | |-- displayName: string (nullable = true)\n | | |-- handle: string (nullable = true)\n | | |-- id: string (nullable = true)\n |-- verb: string (nullable = true)\n\n"},"dateCreated":"2016-10-26T21:55:26+0000","dateStarted":"2016-10-26T21:56:36+0000","dateFinished":"2016-10-26T21:56:36+0000","status":"FINISHED","progressUpdateIntervalMs":500,"$$hashKey":"object:286","focus":true},{"text":"%spark.sql\n\nselect actor.displayName, actor.extensions.followers from activities limit 20\n","dateUpdated":"2016-10-28T13:29:49+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[{"name":"displayName","index":0,"aggr":"sum"}],"values":[],"groups":[],"scatter":{"xAxis":{"name":"displayName","index":0,"aggr":"sum"},"yAxis":null},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true,"editorMode":"ace/mode/sql"},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477661291200_2006316681","id":"20161028-132811_598966130","dateCreated":"2016-10-28T13:28:11+0000","status":"FINISHED","progressUpdateIntervalMs":500,"focus":true,"$$hashKey":"object:1537","dateFinished":"2016-10-28T13:29:50+0000","dateStarted":"2016-10-28T13:29:50+0000","result":{"code":"SUCCESS","type":"TABLE","msg":"displayName\tfollowers\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\nTrevor Grant\t70\n","comment":"","msgTable":[[{"key":"followers","value":"Trevor Grant"},{"key":"followers","value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}],[{"value":"Trevor Grant"},{"value":70}]],"columnNames":[{"name":"displayName","index":0,"aggr":"sum"},{"name":"followers","index":1,"aggr":"sum"}],"rows":[["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70],["Trevor Grant",70]]}},{"text":"%md\nPick a few twitter accounts to research","dateUpdated":"2016-10-23T07:15:01+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477250053402_165304395","id":"20161023-191413_-493081131","result":{"code":"SUCCESS","type":"HTML","msg":"

Pick a few twitter accounts to research

\n"},"dateCreated":"2016-10-23T07:14:13+0000","dateStarted":"2016-10-23T07:15:02+0000","dateFinished":"2016-10-23T07:15:02+0000","status":"FINISHED","progressUpdateIntervalMs":500,"$$hashKey":"object:287"},{"text":"%md\nPull info on those accounts","dateUpdated":"2016-10-23T07:16:15+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true,"editorMode":"ace/mode/markdown"},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477250158983_503619627","id":"20161023-191558_-307359199","result":{"code":"SUCCESS","type":"HTML","msg":"

Pull info on those accounts

\n"},"dateCreated":"2016-10-23T07:15:58+0000","dateStarted":"2016-10-23T07:16:15+0000","dateFinished":"2016-10-23T07:16:15+0000","status":"FINISHED","progressUpdateIntervalMs":500,"$$hashKey":"object:288"},{"text":"%md\nPull friends of those accounts","dateUpdated":"2016-10-23T07:15:27+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477250101867_1674182312","id":"20161023-191501_-411136591","result":{"code":"SUCCESS","type":"HTML","msg":"

Pull friends of those accounts

\n"},"dateCreated":"2016-10-23T07:15:01+0000","dateStarted":"2016-10-23T07:15:27+0000","dateFinished":"2016-10-23T07:15:27+0000","status":"FINISHED","progressUpdateIntervalMs":500,"$$hashKey":"object:289"},{"text":"%md\nPull all content by these accounts","dateUpdated":"2016-10-23T07:17:04+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477250127412_-519088922","id":"20161023-191527_1928267114","result":{"code":"SUCCESS","type":"HTML","msg":"

Pull all content by these accounts

\n"},"dateCreated":"2016-10-23T07:15:27+0000","dateStarted":"2016-10-23T07:17:04+0000","dateFinished":"2016-10-23T07:17:04+0000","status":"FINISHED","progressUpdateIntervalMs":500,"$$hashKey":"object:290"},{"text":"%md\nNormalize user(s) -> page(s)","dateUpdated":"2016-10-23T07:17:21+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477250194079_166826422","id":"20161023-191634_-1435819396","result":{"code":"SUCCESS","type":"HTML","msg":"

Normalize user(s) -> page(s)

\n"},"dateCreated":"2016-10-23T07:16:34+0000","dateStarted":"2016-10-23T07:16:51+0000","dateFinished":"2016-10-23T07:16:51+0000","status":"FINISHED","progressUpdateIntervalMs":500,"$$hashKey":"object:291"},{"text":"%md\nNormalize status(es) -> post(s)","dateUpdated":"2016-10-23T07:17:04+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477250211090_-1984674104","id":"20161023-191651_1858788600","result":{"code":"SUCCESS","type":"HTML","msg":"

Normalize status(es) -> post(s)

\n"},"dateCreated":"2016-10-23T07:16:51+0000","dateStarted":"2016-10-23T07:17:05+0000","dateFinished":"2016-10-23T07:17:05+0000","status":"FINISHED","progressUpdateIntervalMs":500,"$$hashKey":"object:292"},{"text":"%md\nPut page(s) in dataframe(s)","dateUpdated":"2016-10-24T08:38:51+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477250224610_-86292382","id":"20161023-191704_-1463437142","result":{"code":"SUCCESS","type":"HTML","msg":"

Put page(s) in dataframe(s)

\n"},"dateCreated":"2016-10-23T07:17:04+0000","dateStarted":"2016-10-24T08:38:51+0000","dateFinished":"2016-10-24T08:38:51+0000","status":"FINISHED","progressUpdateIntervalMs":500,"$$hashKey":"object:293"},{"text":"%md\nPut post(s) in dataframe(s)","dateUpdated":"2016-10-24T08:38:49+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true,"editorMode":"ace/mode/markdown"},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477250299738_-122920149","id":"20161023-191819_1405823231","result":{"code":"SUCCESS","type":"HTML","msg":"

Put post(s) in dataframe(s)

\n"},"dateCreated":"2016-10-23T07:18:19+0000","dateStarted":"2016-10-24T08:38:50+0000","dateFinished":"2016-10-24T08:38:50+0000","status":"FINISHED","progressUpdateIntervalMs":500,"$$hashKey":"object:294"},{"text":"%md\n","dateUpdated":"2016-10-23T07:18:27+0000","config":{"colWidth":12,"graph":{"mode":"table","height":300,"optionOpen":false,"keys":[],"values":[],"groups":[],"scatter":{},"map":{"baseMapType":"Streets","isOnline":true,"pinCols":[]}},"enabled":true},"settings":{"params":{},"forms":{}},"apps":[],"jobName":"paragraph_1477250307539_1269116696","id":"20161023-191827_1882228590","dateCreated":"2016-10-23T07:18:27+0000","status":"READY","progressUpdateIntervalMs":500,"$$hashKey":"object:295"}],"name":"Twitter","id":"2C1AA31WA","angularObjects":{"2C2ACDU5K:shared_process":[],"2C2BWWPYV:shared_process":[],"2BYCF8FE8:shared_process":[],"2C1NGJC34:shared_process":[],"2C1SDFHDA:shared_process":[],"2C1QP4THZ:shared_process":[],"2C17CC7FC:shared_process":[],"2BY14D25S:shared_process":[],"2BYDXYFW2:shared_process":[],"2BYSPUWEA:shared_process":[],"2BY5XP9RJ:shared_process":[],"2C1XZ19Z5:shared_process":[],"2BZF3H32Q:shared_process":[],"2C1XX42KW:shared_process":[],"2C2XJZ5E2:shared_process":[],"2C1KP238Y:shared_process":[],"2C21VK8T2:shared_process":[],"2BYN1EBZH:shared_process":[]},"config":{"looknfeel":"default"},"info":{}}