PURSUE ULTIMATE FACTS

2020-02-06
约翰的二元论

别爱世界、或世界上的事物了。人若爱世界,爱父的心就不在他里面了。因为世界上的事物、肉体的私欲、眼目的私欲、和人生的矜夸、都不是出于父,而是出于世界。并且世界和世界的私欲、是正在过去;惟独实行上帝旨意的、永远长存。
(约翰一书 2:15-17 吕振中)

Do not love the world nor the things in the world. If anyone loves the world, love for the Father is not in him; Because all that is in the world, the lust of the flesh and the lust of the eyes and the vainglory of life, is not of the Father but is of the world. And the world is passing away, and its lust, but he who does the will of God abides forever.
(1 John 2:15-17 Recovery Version)


不要爱世界,和世界上的事。人若爱世界,爱父的心就不在他里面了;因为凡世界上的事,就是肉体的情欲、眼目的情欲、并今生的骄傲,都不是出于父,乃是出于世界。这世界和其上的情欲,正在过去;惟独实行神旨意的,永远长存。
(约翰一书 2:15-17 恢复版)

这个版本的约翰的眼中的世界真是狭隘。

可能是因为和合本翻译上的错误?或者是因为约翰使用了两个连接词「和」产生了歧义,所以造成了两个翻译版本之间微小的差异?


整个世界虽然不是从父来的,但不是也是父造的吗?


约翰的二元论

两个世界 约翰的二元论,表面上看来,似乎和符类福音的二元论不同。这是约翰的神学思想中最困难的难题。符类福音中的二元论,基本上是横向二元论:是两个世代(现世与来世)之间的对比。约翰福音的二元论,基本上是纵向二元论:是两个世界(上头的世界与下头的世界)之间的对比。「你们是从下头来的,我是从上头来的;你们是属这世界的,我不是属这世界的」(约八23)。符类福音对比现世与来世,我们并从保罗的用法知道:「这世界」可以是来世二元论中「这个世代」的同义词。但在约翰福音中,「这世界」几乎每一次都与上头的世界对比。「这世界」是邪恶的,是魔鬼管辖的(约十六11)。耶稣来作这世上的光(约十一9)。耶稣作工的权柄,不是从「这世界」来的,乃是从上头的世界来的,是从神来的(约十八36)。耶稣完成了他的使命,他就必须离开「这世界」(约十三1)。

  当耶稣论到他从天上降下到地上,并且再上升到天上,也显明了同样的二元论。「除了从天降下仍旧在天的人子,没有人升过天」(约三13)。耶稣从天上降下来,是要成就他从神领受的使命(约六38)。他从天上降下来,作「生命的粮」。人若吃这粮,就永远不死,就有永生(约六33,41,50,51,58)。当耶稣完成他的使命,他必须升到天上他原来所在之处(约六62)。耶稣复活以后,当马利亚要依附他,他叫她不要紧抓住他,因为他还没有升上去见他的父,他却要往门徒那里去,告诉他们说:「我要升上去,见我的父,也是你们的父;见我的神,也是你们的神」(约廿17)。

黑暗与光明 下头的世界是黑暗的领域,但上头的世界是光明的世界。基督来,进入黑暗的领域,把光带来。光明与黑暗被看为彼此相争的两个法则。「光照在黑暗里,黑暗却不能胜过光(约一5,另译)。耶稣自己是那光(约八12),他来了,好叫人不留在黑暗里,却要得着生命的光,使人能行在光中,就不至跌倒(约八12;九5;十一9;十二35;46)。凡信从这光的,就成为光明之子(约十二36)。可是,虽然光已经来到世间,世人却不爱光倒爱黑暗,并且拒绝来就光,因为他们的行为是恶的。凡「行真理」的,必来就光,要显明他的真实品性(约三19、20)。约翰福音认为,最大的恶就是恨恶那光,就是不相信耶稣。

肉体与灵 约翰的二元论还有一项对比,就是肉体与灵,虽然用得不多。肉体属于下头的领域;灵属于上头的领域。就像保罗的用法一样,肉体不是恶的,但肉体是下头领域的软弱与无能。人类生命通常是「从肉体的意生的」(约一13,另译),即借人类天然繁殖而生的。肉体不是罪恶,因为「道成了肉身,住在我们中间」(约一14)。肉体是人性、人类的同义词。可是,肉体被限制在下头的领域,不能够到上头世界的生命。「从肉身生的,就是肉身」(约三6);人必须从上头而生。耶稣进一步描述,从上头而生是从圣灵生。人本身与靠自己都是软弱会死的;惟有借着神之灵内在的工作,人才能明白或经历天上领域的恩典(约三12)。永生是神之灵的赏赐;按永恒看来,肉体是无用的。肉体不能使人得到永远的生命(约六63)。

  在耶稣论及崇拜的话中,有一不同的层次插入约翰的二元论。「神是个灵,所以拜他的,必须用心灵和诚实拜他」(约四24)。「用心灵拜」原文作「在灵里拜」,这句话不是指「在人的灵里拜」,不是对比「用外面形式与礼仪拜」;这句话是指「靠着神的灵而有的礼拜」。此处的对比并非上头世界与下头世界之间的对比,也不是以前时代的礼拜与在耶稣开启的新纪元的礼拜之间的对比。此处的对比是在圣灵与真理里礼拜与在耶路撒冷或基利心山的礼拜之间的对比。此处是「末世取代了暂时的制度(像圣殿)。」「圣灵把人提升高过属地、肉体的层面,并帮助人能正确地敬拜神。」此处我们首次遇见纵向与横向汇合。因为耶稣已经从天上来到世间,他已经设立万事万物的新制度。

Kosmos(世界) 进行约翰神学的研究,重要的是要知道他如何使用「世界」(Kosmos)这个字。该字有几种不同用法。有时类似符类福音的用法,Kosmos(世界)这字,正如希腊哲学用语,可以指整个受造的宇宙(约十七5,24),也可以专指大地(约十一9;十六21;廿一25)。大地往往是指人的居所,用在一些类似犹太用语的句子中:进到世界来(六14;九39;十一27;十八37),在世界里(九5上),离开世界(十三1;十六28下)。虽然这些句子有些因为上下文的缘故而有神学意义,但这用语本身却是常用的犹太用语。进到世界来就是诞生;在世界里就是生存;离开世界就是死亡。

  没有半点迹象显示有「世界是恶的」概念。「万有是借着他造的;凡被造的,没有一样不是籍着他造的」(约一3)。约翰福音没有天体二元论的成份,也没有否定世界的成份。受造的世界一直都是神的世界。

  Kosmos(世界)借换喻不只可以指这世界,也可以指那些居住在这世界上的人类(十二19;十八20;七4;十四22)。查考上述这些经文可以知道:Kosmos(世界)不是特别用来指居住在地上所有的人,便只简单地泛指人类。「世人都随从他去了」(约十二19)这句话意指耶稣得到许多人的回应。「我(耶稣)从来是明明的对世人说话」(约十八20)这句话意指他是公开地传道。约翰这个用法和希利尼的希腊文并七十士译本希腊文的用法相同,但古典希腊文则不常这样用。该法也出现在符类福音,在马太福音五章十四节和十八章七节。

  Kosmos(世界)用来指人类,最值得注意的是那些以世界(人类 )为神所爱和拯救对象的句子。神爱世界(世人)(约三16),并且差他的儿子去拯救世界(世人)(约三17下;十二47)。耶稣是世界(世人)的救主(约四42);他来要除去世界(世人)的罪孽(约一29),并且赐生命给世界(约六33)。就像前述第一组引用的经文,这些句子并没有特别强调普世性,只是简单地泛指人类是神的爱和拯救行动的对象。

Kosmos(世界):与神为敌的人 讨论迄今,Kosmos(世界)的约翰用法类似符类福音的用法。可是,约翰有一种 Kosmos(世界)的独特用法,是符类福音所没有的。人不只简单地被看为地上的居民并神爱与拯救行动的对象而已,人也被看为(与神对比之下)是罪恶的、叛逆的、并远离神的,是堕落的人。Kosmos(世界,世人)的特性是邪恶(约七7),并且不认识神(约十七25),也不认识神所差来的基督(约一10)。世界(世人)这样行不是因为世界(世人)有什么与生俱来的邪恶。当约翰说:「Kosmos(世界)也是借着他造的」(约一10),从上下文显示, Kosmos(世界)在此处是指人类,不是仅指宇宙或大地。Kosmos(世界)之所以邪恶,并不是与生俱来的,乃是因为世界转离其造物主,并且作了邪恶权势的奴隶。世界远离神表现在世界对神所差来拯救世界之基督的憎恶(约七7;十五18),奴役这世界,叫这世界背叛神的邪恶权势在约翰福音中曾三次被称为这世界的王(约十二31;十四30;十六11;见约壹五19)。世界与耶稣的门徒针锋相对。门徒从前属于世界,但神会把他们从世界中挑选出来,归给基督(约十七6);虽然他们要继续活在世界里(约十三1;十七11,15)。他们不再与世界共有一样的品格,因为他们属于耶稣基督,领受了他的道(约十七14)。就如耶稣的目标是要按他父的旨意而活,不纯粹为人的目标而活,因而他虽然活在世上,却不属于这世界,他的门徒也可以这样说,他们已经改变了他们的喜爱,从单是人的目标转成神的目标,因此他们不属这世界(约十五19;十七14)。耶稣来了,已经实际上在人当中造成了划分区别,虽然他们仍然继续生活在一起。神已经从世界当中拣选了人出来(约十五19),使他们可以以耶稣为核心,形成一个新的团契(约十七15)。因为这世界恨恶耶稣,所以这世界也将恨恶跟随耶稣的人(约十五18;十七14)。

  门徒的反应不是要从世界退隐,乃是要活在世上,其动机不是爱世界,乃是爱神。门徒要在世界负起使命,就是彻底继续耶稣的使命(约十七18)。就如耶稣把自己委身于完成他父对世界的旨意,并且完成他救赎世人的计划,因此跟随他的人也照样不从人的层面去寻找他们的安全感和满足,乃是委身于神的救赎计划(约十七17 ;19)。他们要保守自己脱离这世界的恶者(约十七15),其方法是以神为他们爱的核心。

  这种把人类区分为神的百姓与世界不是绝对的分割。人可以借着听信耶稣的工作和信息而从世界移转到神的百姓(约十七6;三16)。因此门徒要继续耶稣在世界的传道事工,叫人可以认识福音而得拯救(约廿31),脱离这世界。这世界不能接受圣灵(约十四17),不然世界早就不再是世界了;但许多在世界的人将要接受耶稣门徒的见证(约十七21),并且要相信他,虽然未曾看见过他(约廿39)。

撒但 约翰幅音和符类福音一样,认为世界是在一邪恶超自然的权势掌握之中,这权势称为魔鬼(约八44;十三2)或撒但(约十三27)。它被描述为「这世界的王」(约十二31;十四30;十六11)。保罗也有类似的措辞。符类福音称它为鬼「王」(archon)(太十二24)。约翰没有提到它管辖众污鬼,但约翰和保罗一样,说「全 kosmos(世界)受这 archon(王)所管辖」。它的目标是要拦阻神的工作。当犹大正要出卖耶稣,「撒但就入了他的心」(约十三27)。犹太人自称他们是亚伯拉罕的后裔,并正因为这原因,他们是承受了亚伯拉罕恩典的应许。耶稣回答说,他们憎恨他,便证明他们不是亚伯拉罕的子孙,他们实在是魔鬼的儿女,因为魔鬼从起初是杀人的,不守真理,因它心里没有真理(约八39及以下)。耶稣来带给人真理(约一17);但魔鬼是说谎的,也是说谎之人的父。

  虽然约翰福音不像符类福音那样叙述耶稣赶运污鬼,但在约翰福音,耶稣的工作显然也同样包括了超自然权势的争战。撒但是这世界的王,它试图征服耶稣(约十四30),但它无能为力。相反的,耶稣要得胜他的仇敌。耶稣在十字架上胜过了撒但,以致撒但可以说是「被赶出去」(约十二31)。换句话说,这个得胜可以描述为「这世界的王受了审判」(约十六11)。约翰并不臆测撒但的来源或本质。约翰只描述撒但为邪恶的超自然权势,是这世界的主,却被耶稣在他十字架上征服了。

  许多现代学者不能接受超自然权势的观念,尤其是不能接受耶稣所说,犹太人是魔鬼的儿女。「拿撒勒人耶稣居然说过这些话,这种记载简直匪夷所思。」他们认为这些话不是耶稣的教训,乃是约翰福音作者一个激烈的反犹太人论调。可是,我们必须承认,这句话与整个约翰福音的教训相符合。「(犹太人)不能自称为神的儿女,因为他们的行为否定了这个身份。犹太人对耶稣的态度,抗拒他从父启示给他们的真理,并且决定要杀死他,这些都相当符合他们的父魔鬼的性情,这魔鬼反叛神,因为神的国度是真理,魔鬼从起初就是杀人的。它的本质是虚谎,而它的母语是谎言。因它的嫉妒和凶恶,带给人类背逆和死亡。它的儿女不能欢迎从独一真神来的启示,他们且被驱使图谋杀害圣子,就是父所差来,要带给世界人类光明与自由的基督。」

hamartia(罪)在符类福音中用来指罪恶的行动,罪恶的彰显。约翰福音较多强调罪的本质。圣灵要定这世界的罪(单数,不是诸罪「复数」)(约十六 8)。罪是一种本质,这本质在这例子中彰显在不信基督的事上。每一位活在罪行中的人就是罪的奴仆,就是在罪的捆绑之下(约八34)。「人的罪是服役于邪灵的权势,并因此完全与神隔离。」除非人相信耶稣是基督,不然他们将要死在他们的罪中(约八24)。

  罪是黑暗;而罪恶世界的特性是黑暗。但神未曾遗弃这世界。那光照在黑暗中,亦即说,神借着道,用超自然启示的光穿透黑暗;虽然黑暗很漆黑,但黑暗不能熄灭那光(约一5)。耶稣也用类似的字句称他的传道事工。耶稣告诉人,这光在他们中间,还有不多的时候,他们应当趁着有光行走,免得拒绝了这光,黑暗就吞噬了(Katalam-bano)他们。那些拒绝这光的人,在黑暗中瞎眼跌倒,不知道往何处去。只有借着相信这光,人才能成为光明之子(约十二35)。

罪是不信 不信基督是恨恶神的进一步彰显。耶稣临在人中间,使他们对神的恨恶到了一个紧急关头,以致对神的恨恶变成清楚彰显为恨恶基督(约三19一21)。人若决定不信基督,他就要死在他的罪中(约八24)。约翰壹书五章十六节及以下的「至于死的罪」也许要按约翰福音八章廿四节来了解。也就是说,顽梗不信的罪其本身就判决了这人永远与神隔绝。因为这个缘故,约翰福音非常强调相信(Pi-steuo eis「信入」)基督。这句话在符类福音只出现过一次(太十八6)。这句话却在约翰福音出现过卅四次,其中十一三次是耶稣说的,廿一次是约翰的注释。不信是罪的精髓(约十六 9)。除非人相信,不然他们要灭亡(约三16),神的震怒常在他身上(约三36)。

死亡 约翰福音,除了认为是人生存在世上的一项事实外。多讲死亡。他极少臆测有关撒但、罪、或死亡的根源。人若没有基督带来的生命,人类是在死亡的手中,人类要为此负责,因为人类犯了罪。死亡是这世界的特色;但生命已经从上头来到这世界里,叫一切的人可以脱离死亡,并且进入永远的生命(约五24)。

末世二元论 讨论迄今,我们已经追溯约翰二元论的纵向面。下头的世界是黑暗的领域,是撒但权势、罪与死亡的领域。上头的世界是光明的世界,是圣灵和生命的世界。光明与生命已经借着耶稣的传道事工,闯进黑暗,并且把人从黑暗、罪恶与死亡里解救出来,赐给他们圣灵的生命。

  但是,这还不是约翰二元论的全貌。因为约翰福音有纵向末世论与横向末世论之间的紧张状态。约翰不只知道上头的世间闯进下头的世界、闯进「历史」。布特曼认为,约翰的二元论其实是抉择二元论(a dualism of decision),是诺斯底主义天体二元论转化而成的。陶德则认为,约翰的二元论其实是柏拉图二元论,就是「这世界各物各事所拥有的实体都源自他们蕴含的永恒观念。」因此,了解约翰有否救赎历史的概念,就更加重要了。

  库尔曼认为,必须从救赎历史的角度来看约翰的神学。虽然约翰有些用语的确在诺斯底主义的思想中出现过,并且虽然约翰也许真的故意使用这些用语向有诺斯底主义倾向的人阐释福音,可是我们不必再以为约翰的用语是源自诺斯底主义的思想。这些用语也在巴勒斯坦的思想,就是库穆兰作品中有出现过。同样重要的是,约翰把「道」的降临放在历史之中。约翰福音固然没有像符类福音那样频繁使用旧约圣经来证明耶稣是旧约盼望的成全。但约翰福音也多次引述旧约圣经的预言来证明这些预言已经在耶稣生平事件中成全了。施洗约翰就是那在旷野有人声喊着说:「修直主的道路」,正如先知以赛亚所说的(约一23)。耶稣洁净圣殿,又对卖鸽子的说:「把这些东西拿去;不要将『我父』的殿,当作买卖的地方。」约翰福音跟着便记载:「他的门徒就想起经上记着说:『我为你的殿,心里焦急,如同火烧。』」(约二13一17)约翰以耶稣对圣殿的主权为成就了诗篇六十九篇9节的预言。约翰记载:耶稣开启了新的纪元,所有人都比旧时代的人更能直接认识神。约翰福音跟着便记述:「在先知书上写着说:『他们都要蒙神的教训。』」(约六45)表示耶稣成就了旧约先知的预言(可能是以赛亚书五四章十三节)。约翰记述耶稣最后一次进入耶路撒冷,他记载:「如经上所记的说:『锡安的民哪,不要惧怕,你的王骑着驴驹来了了』」(约十二12一16)约翰认为这是以色列王君临耶京,应验了诗篇一一八篇廿五节及撒迦利亚书九章九节所预言的。约翰福音也记载:以色列拒绝耶稣,「这是要应验先知以赛亚的话,说:『主阿,我们所传的,有谁信呢?主的膀臂向谁显露呢?』他们所以不能信,因为以赛亚又说:『主叫他们瞎了眼,硬了心,免得他们眼睛看见,心里明白,回转过来,我就医治他们。』」引述了以赛亚书五三章一节及六章十节的话。约翰也记载耶稣被卖是要应验诗篇四一篇十节的话说:「同我吃饭的人,用脚踢我。」(约十三18)。约翰甚至认为,耶稣受死时发生的事,都一一应验了诗篇廿二篇十九节(约十九24),诗篇卅四篇廿节(约十九36),和撒迦利亚书十二章十节(约十九37)。可是,比明确引述旧约圣经更令人印象深刻的,是约翰福音的整个格调,并对旧约圣经的整个态度。「约翰的写作方法大体说来,不是要从旧约圣经,这里一点或那里一点的,摘取一些经文来支撑那几项基督教教义和历史;约翰乃是把新启示建基在全部旧约圣经所形成的背景或架构上。」支持这个论据有一件事实:绝大部份约翰主音的整个历史背景是在耶路撒冷的犹人节期。

  约翰非常了解,耶稣开启了新的纪元,实现了旧约时代的盼望。这是他在开场白的主题。律法本是借着摩西传的;恩典和真理(相等于旧约圣经的 hesed(忠爱)和 emeth(信实),都是由耶稣基督来的(约一17)。约翰记载耶稣经常提到摩西(十一次),又和犹太人辩论有关谁才是亚伯拉罕的后裔(约八33—58),耶稣强调,他来是要赐人真自由,犹太人自以为他们在亚伯拉罕里面就已经有了这种真自由,其实并非如此(约八33,36):他甚至声言:「你们的祖宗亚伯拉罕欢欢喜喜仰望我的日子;既看见了,就快乐。」(约八56)无论我们怎样注释这节圣经,这句话都肯定,耶稣已经实现了亚伯拉罕从应许而来的盼望。

  约翰福音以耶稣为旧约弥赛亚盼望的实现,这可从下述事实得知;约翰福音使用与符类福音相同的名号来称呼耶稣,如弥赛亚、以色列的王、人子、与神的儿子,虽然约翰福音使用时,多少有点不同。耶稣从未自称为神的道,但这并不重要。这是约翰自己对耶稣的独特见证。

  无可置疑地,许多约翰福音叙述的事件都有象征意义,把耶稣的传道事工放在救赎历史的流里。头一件神迹——在迦拿婚宴变水为酒——是个象征,是个记号(约二11)。婚宴象征弥赛亚的日子(赛五四4-8;六二4-5),并且婚宴和大筵席都出现在符类福音中,象征弥赛亚纪元(太八11;廿二1-14;路廿二16-18)。启示录以婚宴描述弥赛亚的极致完成(启十九9)。约翰福音的迦拿婚宴象征弥赛亚救恩的临在;而酒象征弥赛亚筵席的欢乐(见可二19);那六口作为犹太人洁净之礼的石缸,象征旧约时代,这时代现今正要结束;而马利亚的话:「他们没有酒了,」象征犹太人洁净礼的遗传徒有其表,就像马可福音七章一到廿四节所说的。

  约翰故意把洁净圣殿写在他的福音书的最前面,就像路加把耶稣在拿撒勒遭弃写在耶稣传道事工的前头一样,这是另外一项征兆(约二23)。约翰以此为耶稣表明他是圣殿的弥赛亚主。这圣殿要被拆毁,并且被耶稣复活所表明的一切所取代(约二19-20)。约翰福音四章廿到廿四节记载,耶稣公开声明,耶路撒冷和撒玛利亚的圣殿礼拜,要被圣灵带领的敬拜取代。

  真理(aletheia)和真(alethinos)是约翰常用的两个字。约翰常常描述神在基督里的启示是真理、是真实的。他的意思不只是错误、虚假的反面,也不只是天上恩典与地上事物的对比,乃是新世代的恩典和从前已逝世代的事物的对比。「那真光」(约一9)固然与地上的黑暗对比,但这对比不是与外邦宗教的假光对比,乃是与在耶稣之前犹太人那些部份、不完全的光对比。施冼约翰也算是个光(约五35),但耶稣却是完全的光。「那真粮」(约六32)是那满足灵里饥饿的粮;但这不是与日常食物、乃是与神借摩西赐下的吗哪对比,这吗哪只能够维持肉身的生命。基督是「那真葡萄树」(约十五1),因为他赐下真生命的源头给常在他里面的人,与从前时代以色列这葡萄树里面的一份子成对比(耶二21;结十五1一8;诗八8一16)。

  约翰福音常常出现「时候」的字和观念(约二4;八20;十二23,等等)。这就进一步强调,约翰福音以耶稣为救恩历史的核心。耶稣受苦、死亡、复活与升天的时候是神对待人的漫长历史的顶点。「现在」(nun)这个字一再使用,也同样强调这点。「时候将到,如今就是了」(约四23;五25)。「现在」耶稣的使命要到最高峰,这将意味:得胜魔鬼和世界(约十三31)、他自己在死亡里的荣耀(约十七5)、并他的回到父那里(约十六5;十七13)。救赎历史的最高峰也是末世极致完成的预尝。「在约翰福音的 nun(现在)里,已经…… 显示约翰知道是在过渡时期,是在几乎完全投向实现里,就是末日、极致完成而借基督已『现在』临在了。但约翰的『现在』(nun)…… 不是独一无二的。这不过是初期基督教的普通观念的增强形式而已。」

  约翰也展望将来。虽然约翰并没有明显的教会论,但他预见耶稣门徒的传道事工。他的使命是「要将神四散的子民,都聚集归一」(约十一52)。这明显反映外邦人的传道事工。他也曾说他是好牧人,他必须领「我另外有羊、不是这圈里的」来(约十16)。这句话也同样反映出向外邦人传福音的使命。

  约翰有实现的、未来的末世论成份(正如我们将要讨论到的)。虽然约翰福音的永生往往是「实现末世论」的现今的生命,但有时候是未来的和末世的(约三36;五39)。有一句话反映出末世二元论的两个世代。纵或不用这特殊的用语(永生),也比符类福音平行的经文更清楚。「在这世上恨恶自己生命的,就要保守生命到永生」(约十二25)。生命是将来世代的生命,而这句话的「这世界上」,与符类福音的「这世代」同义。

  我们结论说:「约翰的救恩观是纵向的,也是横向的。纵向表示神借耶稣介入的独一无二性;横向方面建立了这项介入与救恩历史的关系。」剩下来的问题是:这个与符类福音没有不一致的看法是否真正合符圣经的看法?抑或这看法是希伯来和希腊的救恩观的融合,并实际上歪曲了福音?

希腊二元论 讨论约翰的二元论,必须了解希腊二元论(包括诺斯底主义)的背景,也要了解新近发现的犹太二元论(就是库穆兰文献所代表)的背景。正如前面说过,有些学者,布特曼是当中最杰出的,使用「宗教历史」(religions geschichte)的方法,认为诺斯底主义基本上不是希腊二元论与福音混合的结果,却是发源于主前的东方宗教混合运动的最后产物。可是,除非发现主前犹太人或东方资料清楚反映这二元论,不然,下面结论比较安全:「诺斯底主义…… 其实只是根深蒂固的希腊思想倾向的演变发展结果。」

  纵览各式各样的希腊文作家,像哲学家柏拉图,文学家蒲鲁塔克(Plutarch),并犹太人斐罗(Philo),便可以证明二元论是希腊哲学与宗教思想中根深蒂固的观念。值得注意的是,犹太人斐罗承认旧约圣经是神的启示,他用不折不扣的哲学性二元论来注释旧约圣经。这二元论认为,有两种存在的领域——现象界与真相(本体)界:易变、过渡、可见的世界与不可见、永恒的、神的领域。最终实体只属于上头的世界。人,像宇宙一样,是个二元体:身体与灵魂。身体属于现象界,而灵魂属于真相(本体)界。可见的世界,包括人的身体,本身并非邪恶,但却是灵魂的累赘和羁绊。描述这两者之间的关系有一句名言:Soma-sema,身体是灵魂的坟墓或牢房。智就是那些能够主宰他身体的七情六欲、并让他的 nous(心智)管辖他的较低欲望的人。「得救」属于那些克制他们情欲的人;而他们死时,灵魂要从他们属地、身体的捆绑中得释放,并且自由地享受有福的不朽。得救是人借知识而获得的。柏拉图教导说,人的理性能够了解世界与人本身存有的真相,并因此主宰身体。斐罗也教导说,从属地捆绑中得释放是借着对神与世界的知识;柏拉图用辩证推理来获得这项知识,但斐罗则以摩西律法的启示和预言代替。

  最重要的诺斯底主义早期资料是黑尔梅文献,它反映出柏拉图主义和其他哲学的融合。我们已经讨论过约翰福音与黑尔梅文集之间有令人惊异的相似之处。

  神称为心智、光明、与生命。第一篇论文 Poimandres 以无限光明(就是神)的异象开始。与这原始光明遥遥相对的是一片混沌的黑暗之洋。有一圣道(logos),神的儿子,从这光出来,分隔高等的元素与低等的元素。天体是从低等元素,土与水所形成。自然界的低等元素没有丝毫理性,都是纯粹物质。人是按心智(nons)的样式受造。心智是光明和生命。但因迷恋受造之物,因而堕落并与非理性的自然界掺杂。人有两面:由于他的身体,所以是会朽坏的;但因他的本质存有,所以是不朽的。拯救可以在死后获得,那时人一步一步脱去他感官性质的成份,并且借着获得灵智(gnosis),就可神化。这学说认为,神的领域是光明,而低等领域是混沌的黑暗。

  充分发展完成的诺斯底主义认为,物质本身是邪恶的,人要得救必须借接受灵智(gnosis),这灵智是那位从天降下,又升上天的救赎者所赐与的。

库穆兰二元论 库穆兰文献的二元论与希腊的二元论非常不同。库穆兰文献的教规卷轴(Scroll of the Rule)(IQS)三章十三节至四章廿六节,是一般很好的范例,包含了库穆兰二元论各种基要成份。宇宙中有两组灵,互相交战。一组是真理的灵,一组是邪恶的灵。灭命的天使从光明的泉源,流放出真理之灵的忿怒;也从黑暗的泉源,流放出邪恶的云。这两组灵各管辖人类一部份。人类清楚划分成两个阵营,一个是光明与真理的众子,一个是邪恶的众子。可是,这两组灵也在人的心中开辟战场。犹太拉比的思想也有类似的观念。每一个人里头都有两种倾向,一种是善的倾向(yetzer hatob),一种是恶的倾向(yetzer hara)。当人(像库穆兰会员)决志严格遵行公义教师注释的律法书,真理的灵就在他身上掌权。其他所有的人都受邪恶的灵管辖。这争战并不限于在人的心内,也在全宇宙中,因为这争战要待末日大火时才结束。当审判的日子,神要毁灭邪恶的灵,灭命的天使要流放神的忿怒在邪恶的灵及跟随这灵的人身上。库穆兰文献的另外一卷战规卷轴(The Scroll of the War Rule)详细描述这末日的战争(IQM)。约翰福音与上述教规卷轴一段有好些相同的措辞:真理的灵、圣灵、光明之子、永生、生命的光、在黑暗中行、神的忿怒、瞎眼、丰盛的恩典、神的作为。

与约翰比较 希腊二元论与犹太二元论对解释约翰二元论有什么用处?虽然布特曼的学术极具份量,但仍难以令人相信约翰受诺斯底主义二元论的影响。相反的,约翰似乎反驳诺斯底主义那种二元论。当约翰强调说:「道成了肉身,住在我们中间」(约一14),他有意反驳诺斯底主义在属灵世界与物质世界之间放置深渊悬隔的观念。再者,虽然约翰少讲末世论,但约翰的救赎论并非诺斯底主义老的那种灵魂逃脱世界和历史。约翰的救赎论是在世界与历史之内与神活泼的相交,这种相交最终将在末日复活时臻于完全。约翰福音与黑尔梅文集间类似之处的重要性,已随库穆兰二元论的发现而大大减低。「库穆兰卷轴显示约翰福音的二元论与诺斯底主义无关,约翰二元论确是源自巴勒斯坦。」耶利米亚跟看指出约翰二元论类似爱色尼派二元论,都是独一神论,伦理的,和末世论的,都期盼光明的得胜。

  然而,约翰二元论与库穆兰二元论两者之间有显著的差异。库穆兰二元论的争战是两组灵的争战,这两组灵都是神创造的;但约翰二元论的争战,是世界和世界的王,与道成肉身之耶稣的争战。虽然约翰著作与库穆兰文献显然在光明与黑暗,光明之子与邪恶(黑暗)之子这些用语上相似,但约翰并没有以此表达两组灵管辖两类人,他却以此表达:成肉身的道是光,所有的人都在黑暗中,但都受邀请来就光。再者,光进入世界的黑暗中是一项实现末世论,与任何库穆兰神学完全不同。并且,罪论也非常不同。库穆兰认为,光明之子就是那些决志遵行公义的教师所注释的摩西律法,并且与世界(邪恶之子)隔离的人。约翰认为,光明之子就是那些相信耶稣,并因而承受永生的人。库穆兰认为,黑暗就是不遵从律法。约翰认为,黑暗就是拒绝耶稣。上述这些差异导致下列结论:库穆兰对约翰任何的影响,只在用语措辞的范围,不是在基本神学上。

  库穆兰文献与约翰福音有一相似之处,对了解约翰二元论尤为重要。库穆兰也有道德二元论(光明对黑暗),也有末世二元论(期盼光明最终末日的得胜)。库穆兰卷轴和约翰福音一样很少使用两个世代的二元论措辞。但库穆兰显然期盼审判的日子,神要审判黑暗的权势,恶人要在一场末日大战争中毁灭,那时善有善报,恶有恶报。有些学者认为库穆兰会员期盼身体复活;有些库穆兰残卷似乎描述新耶路撒冷,显示库穆兰会员期待神创造一个新世界。

  犹太启示文学作品显然融合纵向与横向二元论。以诺一书记载许多在天上神面前隐藏的隐秘事的启示;但这卷书最主要的是神鉴察的日子的末日极致完成。以斯拉的启示录都提到天上的耶路撒冷城,这城向亚当和摩西启示,也提到乐园,将要在末日审判之后显现。

  圣经也有同样的双重二元论。虽然符类福音的基本结构是末世二元论(末世神国已经借耶稣闯进历史的信息),但符类福音也反映出纵向二元论。天上被认为是神的居所,是耶稣门徒力量的来源。那些认识神国福乐,并为此受苦的人,在天上有大赏赐(太五12)。耶稣劝人积攒财宝在天上(太六20)。倘若那位富有的少年官愿意抛弃对地上事物的爱,跟随耶稣,他就必有财宝在天上(太十九21)。最生动的描述是新约启示录,约翰看见天上的异象,见证神对历史救赎计划的大结局。虽然他看见殉道者的灵魂在天上的祭坛底下(启六9及以下),末日极致完全却是不折不扣的天上耶路撒冷降临地上(启廿一2)。圣经的基本结构是:天上有一位神,他在历史中寻访人,并将最后临到他们,要改变这堕落的世界,并要在蒙救赎的地上住在人当中。这和希腊二元论完全不同,希腊二元论的救恩观,是灵魂逃脱历史,进入天上的世界。约翰的二元论是符合圣经的,因为他宣告神在历史中借道成肉身的耶稣本人寻访世人;而最终目标是死人复活、审判,并有将来世代的生命。约翰福音的着重点也许与符类福音不同,但其基本神学思想是一致的。符类福音宣告,末世神国的救恩已经借耶稣本人及其传道事工闯进历史。约翰福音宣告,借着耶稣本人及其传道事工,已经临在的救恩将有一末日极致的完成。

——《赖氏新约神学》

Read More

2020-01-07
安慰剂

上帝就给他们祝福说:『要繁殖增多,充满全地,去征服它;也要管理海里的鱼、空中的飞鸟、和在地上行动的各样活物。』
(创世记 1:28 吕振中)

二人的眼睛就开朗了,才知道自己是赤身裸体,便缝了无花果树的叶子,为自己作围裙。
(创世记 3:7 吕振中)

门徒对耶稣说:『人和妻子的关系既是这样,结婚就无益了!』耶稣对他们说:『这话不是一切人都能接受的,乃是赐给谁,谁就能接受。因为有阉人是从母胎生下来就这样的;有阉人是被阉的;也有阉人是为天国的缘故自己阉的。能接受的,让他接受。』
(马太福音 19:10-12 吕振中)

绝育赌局:为了创造,冒着失去繁殖的风险。


你们要逃避淫乱。人所犯的无论是什么罪,都是在身子以外,但行淫的却是得罪自己的身子。

(哥林多前书 6:18 中文恢复本)

Flee fornication. Every sin which a man may do is outside the body, but he who commits fornication sins against his own body.

(1 Corinthians 6:18 English Recovery Version)

不品行を避けなさい。人が犯す罪はすべてからだの外のものですが、不品行を行なう者は自分のからだに対して罪を犯すのです。

(コリント人への第一の手紙 6:18 聖書日本語回復訳)

这节经文特别强调淫乱的罪与其他罪不同,因为它直接影响并伤害自己的身体,而基督徒的身体是圣灵的殿(哥林多前书 6:19)。


亲爱的,我劝你们做侨民做寄居的、要禁戒那对你们的灵魂交战的肉体私欲;在外国人中间持守你们的好为人,使他们在毁谤你们为作恶的情形下、因亲眼看见了你们的好行为、便在鉴察的日子归荣耀于上帝。
(彼得前书 2:11-12 吕振中)

新约中关于「心里奸淫伤魂」的经节,最直接的是马太福音 5:28,主耶稣在登山宝训中提到:

只是我告诉你们,凡看见妇女,就动淫念的,这人心里已经与她犯奸淫了。

(马太福音 5:28 中文恢复本)

But I say to you that everyone who looks at a woman in order to lust after her has already committed adultery with her in his heart.

(Matthew 5:28 English Recovery Version)

しかし、わたしはあなたがたに言います。だれでも、情欲をいだいて女を見る者は、すでに心の中で姦淫を犯したのです。

(マタイの福音書 5:28 聖書日本語回復訳)

这节经文强调,不只是身体上的奸淫,心里的情欲也已经构成了罪。虽然经文没有直接提到「伤魂」,但从圣经的角度来看,淫乱和情欲的罪会影响人的魂,使人的心思、情感和意志受到败坏。


新约中更明确提到淫乱对「魂」影响的经节,可以参考:

亲爱的,我劝你们作客旅、作寄居的,要禁戒肉体的私欲,这私欲是与魂战斗的。

(彼得前书 2:11 中文恢复本)

Beloved, I entreat you as strangers and sojourners to abstain from fleshly lusts, which war against the soul.

(1 Peter 2:11 English Recovery Version)

愛する者たちよ、旅人であり寄留者であるあなたがたに勧めます。魂に戦いをいどむ肉の欲を避けなさい。

(ペテロの第一の手紙 2:11 聖書日本語回復訳)

这节经文说明肉体的私欲(包括淫乱)会影响魂,使魂受损。


有说没有复活之事的撒都该人来见耶稣,诘问他说:『先生,摩西曾对我们写着说:「一个人的哥哥若死了,留下妻子,没有遗留孩子,他弟弟该娶他的妻子,为他哥哥树立后裔。」这里曾有弟兄七人;第一个娶了妻,没有遗留后裔就死了;第二个娶了她,也没有留下后裔就死了;第三个也是这样:七个都没有遗留后裔。尽末了,那妇人也死了。他们复活的时候,在复活生活中,她要做他们哪一个的妻子呢?七个人都娶过她为妻子呀!』耶稣对他们说:『你们错了,岂不是因为你们不明白经典,也不晓得上帝的能力么?人从死人中复起了以后,也不娶,也不嫁,乃像天上的使者一样。关于死人活起来的事、摩西书中《刺丛》篇上、上帝怎样对他说:「我是亚伯拉罕的上帝、以撒的上帝、雅各的上帝」、你们没有诵读过么?上帝并不是死人的上帝,乃是活人的上帝呀。你们大错了!』
(马可福音 12:18-27 吕振中)

那说没有复活之事的撒都该人、有几个上前来诘问耶稣说:『先生,摩西曾对我们写着说:『一个人的哥哥若死了,留有妻子,这哥哥又是没有孩子的,他弟弟该娶他的妻子,为他哥哥树立后裔。」好,这里曾有弟兄七人;第一个娶了妻,死了,没有孩子;第二个第三个也都娶了她;甚至于那七个都这样,没有留下孩子就死了。后来那妇人也死了。
这样,在复活生活中,她成了他们哪一个的妻子呢?七个人都娶过她为妻子呀!』耶稣对他们说:『今世之子有娶有嫁;但那算为配得「他世」的、配得起从死人中起来之复活的、也不娶也不嫁。他们也不能再死;乃是和天使一样;既是复活了的人,就是上帝的儿子了。至于死人之活起来,连摩西在《刺丛》篇上也指点明白了;他怎样称主为亚伯拉罕的上帝、以撒的上帝、雅各的上帝。上帝并不是死人的上帝,乃是活人的上帝呀,因为在他看、他们都是活着的。』有几个经学士应时就说:『先生,你说得好。』他们再也不敢诘问他什么事了。
(路加福音 20:27-40 吕振中)

弟兄们住在一起,他们中间若死了一个,没有儿子,死者的妻不可出嫁外人;她丈夫的兄弟要向她尽做丈夫的兄弟的本分、娶她为妻,进去找她。她所生的长子要立起来、接替那死去的兄弟的名分,免得他兄弟的名从以色列中被涂抹。那人若不愿意娶她兄弟的妻,他兄弟的妻就要上城门长老们那里说:「我丈夫的兄弟不肯在以色列中为他兄弟立名,不情愿向我尽做丈夫的兄弟的本分。」那么他本城的长老就要把那人叫来,对他讲话;他若立定主意说:「我不乐意娶她」;那么他兄弟的妻就要当着长老们眼前凑上前到那人跟前,从他脚上脱去了鞋,吐唾沫在他脸上,应时说:「那不为他兄弟建立家室的、人都要这样待他。」这样,那人在以色列中便要名为「鞋被脱掉者的家」。
(申命记 25:5-10 吕振中)

永恒主的使者从刺丛中火焰里向他显现。摩西一看,只见刺丛在火中烧着,而刺丛竟没有被烧毁!摩西说:『我要过去,看这大异象,为什么这刺丛没有烧掉。』永恒主见摩西过来要看,上帝从刺丛中呼叫他说:『摩西,摩西』;摩西说:『我在这里呢。』永恒主说:『不可走近这里来;要把你脚上的鞋脱下,因为你所站的地方是圣地。』又说:『我是你父的上帝,亚伯拉罕的上帝、以撒的上帝、雅各的上帝。』摩西掩着面,因为怕望着上帝。
(出埃及记 3:2-6 吕振中)


并且因他是人子、就给他权柄来行审判。你们别把这事看作希奇了;因为时候必到,那时凡在坟墓里的、都必听他的声音而出来;行善的去到有生命之复活中,作坏事的去到受定罪之复活里。
(约翰福音 5:27-29 吕振中)

但是有人会说:『死人怎样得苏活起来呢?他们要带着什么样的身体来呢?』糊涂人哪,你所种的若不死去,就不得以活起来;并且你所种的,并不是种那将来要有的形体,乃是种那赤身的子粒,或者是麦子、或是其他的谷子。
(哥林多前书 15:35-37 吕振中)

但上帝照自己的意思给它一个形体,并给各样种子适当的形体。一切肉体、不都是同样的肉体,乃是人的一个样子,牲口的肉体又一个样子,飞禽的肉体一个样子,鱼的又一个样子。有天上的形体,也有地上的形体;但天上的之光辉是一种,地上的之光辉又是一种。日的光辉一个样子,月的光辉又一个样子,星的光辉又一个样子:这星和那星在光辉上也有差别。死人之复活也是这样。他被种、在朽坏中,他得苏活起来、在不朽坏之中;他被种、在羞辱中,他得苏活起来、在荣耀之中;他被种在软弱中,他得苏活起来、在强壮能力中;他被种,血气的身体,他得苏活起来,属灵的身体。
既有血气的身体,也就有属灵的身体。经上所记也是这样说:『头一个人亚当成了活的血气人』;末后的亚当成了使人活的灵。但不是属灵的在先,乃是属血气的在先,以后才有属灵的。头一个人出于地,是属土的;第二个人是出于天的。那属土的怎样,凡属土的也怎样;那属天的怎么样,凡属天的也怎样。我们既带了属土的像,也就必带着属天的像。
(哥林多前书 15:38-49 吕振中)

弟兄们,这一点我要说:肉与血不能承受上帝的国,朽坏也不能承受不朽坏。请注意,我把一件奥秘告诉你们:我们不是都要长眠着,乃是都要改变,就在一刹那、一眨眼之间、末次号筒的时候;号筒必响,死人都必得苏活起来、不朽坏;我们呢、也必改变。这能朽坏的必须穿上不朽坏;这能死的必须穿上不死。
(哥林多前书 15:50-53 吕振中)

这能死的既穿上了不死,那时经上所记:『死被吞灭在胜利中』的话便应验了。死啊!你的胜利在哪里?死啊! 你的毒刺在哪里?死的毒刺就是罪,罪的势力就是律法。愿感谢归于上帝,他借着我们的主耶稣基督、常把胜利赐给我们。所以我亲爱的弟兄们,你们要坚定、不摇动,时常充溢出主的工,因为知道你们的劳苦在主里面不是空的。
(哥林多前书 15:54-58 吕振中)

万军之永恒主必在这山上为万族之民摆设肥甘的筵席,陈酒的筵席、满了髓的肥甘、澄清的陈酒。他必在这山上毁灭那遮盖万族民的遮巾,和那蒙蔽列国的蒙脸帕。他已吞灭死亡到永远;主永恒主必擦去万人脸上的眼泪,又从全地上除掉他人民的羞辱;因为这是永恒主说的。
(以赛亚书 25:6-8 吕振中)


  • 穿衣是为了保护群体
  • 吃饭是为了保护个体
  • 刷牙是为了保护牙齿
    • 拉莫三嗪可以治疗牙齿失刷症

—— 2022-7-11

至于这一类的鬼,若不祷告禁食,它就不出来。
(马太福音 17:21 恢复本)

你们禁食的时候、别像假冒为善的人带着愁容了,因为他们把脸显得难看,好对人显出他们在禁食;我实在告诉你们,他们已经收到了他们的赏报了。但是你禁食的时候、要用油抹头,要洗脸,免得对人显出你在禁食,你乃是只对着你隐秘中的父;你父在隐秘中察看的、必报给你。
(马太福音 6:16-18 吕振中)

每天洗头洗脸。热水澡使血管舒张,容易缺水贫血。


人若梦遗,就要全身在水中洗澡,但还是不洁净到晚上。无论是衣服、是皮子、被精液所染、都要用水洗净,但还是不洁净到晚上。女人呢,若男人和她同寝而交合,两人都要在水中洗澡,但他们还是不洁净到晚上。
(利未记 15:16-18 吕振中)

女人呢,若有所泄漏,而她身上所泄漏的是经血,那么、她就有月经污秽七天;凡触着她的就不洁净到晚上。在月经污秽中、凡她所躺的东西、都不洁净;凡她所坐的东西、也都不洁净。凡触着她的床的、要把衣服洗净,在水中洗澡,但还是不洁净到晚上。凡触着她所坐的任何物件的、总要把衣服洗净,在水中洗净,但还是不洁净到晚上。那物件若在那女人床上、或在那女人所坐的物件上,触着它的、就不洁净到晚上。男人若和那女人亲密地同寝,染着她的月经污秽,就不洁净七天;凡他所躺的床都不洁净。
(利未记 15:19-24 吕振中)


今天遇到一个故事:

几年前,我在浙大硕士的后半的时候,我已经受浸。毕业前,我去北京实习。工作了一个星期,很努力,做事也快。后来,渐渐有些不想工作了。又收到一份电子邮件,告知我论文被拒了。我当时看《传道书》,觉得写得很有道理。我就和姑姑在微信里大谈“虚空的虚空”。姑姑觉得我不正常,就专门跑到北京去看望我。要带着我一起去看医生。那时候,我什么都不想做,走几步就想坐下来。不想继续工作,但又不想找组长结束实习。姑姑没有办法。去找我的组长说明我要结束实习,回学校写论文,又硬拖着我去了一个北京的医院。我一直记得前几年大三的时候,被诊断为狂躁发作,那药吃得我难受、木讷、脑子转不动。所以,我想这一次我一定要开一个反作用的药试试。做测试的时候,我就故意选。让“双相情感障碍”的分值很低,让医生以为我是单纯的抑郁症。这样医生就不会再开一些让我面如死灰的药了。和医生交谈的时候,姑姑告诉了医生几年前我狂躁发作的事情。而我又一边赶紧说,几年前可能诊断错了。医生就很为难,因为我测试的结果的确狂躁分值很低。医生就说,开一个转躁率比较低的药。然后,那个药还是专门针对兴趣减退。我仔细地学习那药的知识,觉得还蛮符合自己的心意的。我回到了杭州。虽然仍然每天躺在床上,但是我就开始按照说明书一点一点加量吃药。大约两周后,我就不想睡觉了,从床上跳起来。我开始重构之前项目的代码。我越写越有劲。吃饭也不规律了。有一天,没吃晚饭。晚上也不困,改了一晚上代码。第二天,一大早,姑姑过来。她要带我去复查。在我实验室,看我精神不错。她也不知道,我没吃晚饭,没吃早饭,还没睡觉。在杭州一个疗养院,医生说,还是继续用那符合我心意的药,但是,不管怎样,还是要加一个心境稳定剂。离开疗养院,在等车的时候,我手脚抽动起来,尿失禁,失去一小段时间的意识。等我刚醒来的时候,我不记得我是谁,不知道是什么情况。我只知道我在跟着一个人在路上走。那是姑姑搀着我在往疗养院走。上嘴唇疼。裤子湿的。浑身肌肉都疼。后来,就换了一个药。因为那个我中意的药诱发癫痫的风险蛮高的。我很失落。吃那个新的药,我也没有什么特别的感觉。然后,我就自己停了。反正生活回归正常了。我就弃药了。后来,我去了日本。有时候,种种问题,又会嗜睡。到了一定程度,忍受不了,想要改变自己状态的时候,我就怀念起之前在北京开的那个药来。我问我姑姑,她能不能再去开一点给我。后来,她去开了。她说,这药不能随便带去日本。过海关要检查。所以,她把药一颗一颗地剪下来,放在一个装巧克力的铁盒子里。并把说明书放在里面。我把说明书打开看过。上面姑姑亲笔写着保质日期。我不随便吃那药。总是忍到绝望的时候。因为也怕癫痫。有一次,我只吃了半颗。过一会,就觉得好起来了。我在微信上对我姑姑,这药的药效好强啊。我就吃了半颗,我就觉得好多了。这次回国之前,也是请假睡觉。睡了几天后,我忍耐不下去了,觉得不能再这样了。就把药找出来吃。第一天,早上小剂量吃一片没有效果。晚上又吃。结果,晚上失眠了。第二天,早上吃的效果来得晚。还是没能赶上电车去上班。我想,不能吃得太晚了,就定了早上五点半的闹钟。闹钟一响,我就吃药。我想,等到发挥药效的时候,我正好有力量起床去上班。然后,过了六个小时,十一点半的时候,我再吃一颗,就又可以管六个小时。下午五点以后不吃药。这样,晚上的时候,也不会失眠了。我决定就这样吃药。虽然计划这些事的那天的晚上我失眠了,但是,次日我还是按照计划早上五点半就吃药。果然,我恢复了精神。早上八点,我就已经到公司上班了。我觉得这个药好啊。所以,我就准备了很多问题。想要回国的时候,找个医生,问个清楚。回国后,姑姑陪我去看病,我一直和医生说那个药的事。但是,我姑姑一直阻拦我,不准我开。医生后来又开了一副新药。我不死心。我一定要去找医生开那个药备好。最后,我姑姑没有办法,她慎重地告诉了我真相:之前给我准备的放在巧克力盒子里的药是胃药。她怕我又癫痫。所以,找了一个形状相同的胃药和那药的说明书一起放在巧克力盒子里。我不相信。我把药取出来。药被剪成圆形的一片一片。锡纸包裹上的说明已经残缺不全。我勉强看到一个英语单词,Pantoprazole。查了查,我才发现,原来我一直在吃过期了八个月的安慰剂。我姑姑撒了一个“善意的”谎言。


自分の不幸は、すべて自分の罪悪からなので、誰にも抗議の仕様が無いし、また口ごもりながら一言でも抗議めいた事を言いかけると、……
ーー《人間失格》


一位严重的抑郁症患者吃了两三年的假药是一种什么样的体验?如果不是持有着强大的信念,如果不是想起五六年前做出的活下去的决定,他又怎么能够坚持下去呢?每当他处在抑郁深渊的最深处动弹不得的时候,是什么力量让他爬起?ーー只有这一股力量、只有这一个念头:追求终极真实。

Read More

2019-12-02
Try Airflow

In [ ]:
%%bash
# airflow needs a home, ~/airflow is the default,
# but you can lay foundation somewhere else if you prefer
# (optional)
mkdir ~/airflow
%env AIRFLOW_HOME=~/airflow
In [ ]:
!sudo -HE pip install marshmallow==2.18.0
Collecting marshmallow==2.18.0
  Downloading https://files.pythonhosted.org/packages/9a/3c/4cc463c53136dc503f9ee234c4a6592e1c7411cb362f844e80df70361f29/marshmallow-2.18.0-py2.py3-none-any.whl (50kB)
     |████████████████████████████████| 51kB 15.9MB/s eta 0:00:01
Installing collected packages: marshmallow
  Found existing installation: marshmallow 3.2.2
    Uninstalling marshmallow-3.2.2:
      Successfully uninstalled marshmallow-3.2.2
Successfully installed marshmallow-2.18.0
In [ ]:
%%bash
# install from pypi using pip
sudo -HE pip install apache-airflow
Requirement already satisfied: apache-airflow in /opt/tljh/user/lib/python3.6/site-packages (1.10.6)
Requirement already satisfied: cached-property~=1.5 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (1.5.1)
Requirement already satisfied: future<0.17,>=0.16.0 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (0.16.0)
Requirement already satisfied: text-unidecode==1.2 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (1.2)
Requirement already satisfied: unicodecsv>=0.14.1 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (0.14.1)
Requirement already satisfied: iso8601>=0.1.12 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (0.1.12)
Requirement already satisfied: croniter<0.4,>=0.3.17 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (0.3.30)
Requirement already satisfied: flask-login<0.5,>=0.3 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (0.4.1)
Requirement already satisfied: python-dateutil<3,>=2.3 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (2.8.0)
Requirement already satisfied: requests<3,>=2.20.0 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (2.22.0)
Requirement already satisfied: colorlog==4.0.2 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (4.0.2)
Requirement already satisfied: dill<0.4,>=0.2.2 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (0.3.1.1)
Requirement already satisfied: python-daemon<2.2,>=2.1.1 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (2.1.2)
Requirement already satisfied: marshmallow-sqlalchemy<0.19.0,>=0.16.1 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (0.18.0)
Requirement already satisfied: psutil<6.0.0,>=4.2.0 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (5.6.3)
Requirement already satisfied: termcolor==1.1.0 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (1.1.0)
Requirement already satisfied: flask-admin==1.5.3 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (1.5.3)
Requirement already satisfied: flask-swagger==0.2.13 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (0.2.13)
Requirement already satisfied: pygments<3.0,>=2.0.1 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (2.4.2)
Requirement already satisfied: sqlalchemy~=1.3 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (1.3.8)
Requirement already satisfied: funcsigs==1.0.0 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (1.0.0)
Requirement already satisfied: flask<2.0,>=1.1.0 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (1.1.1)
Requirement already satisfied: tenacity==4.12.0 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (4.12.0)
Requirement already satisfied: setproctitle<2,>=1.1.8 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (1.1.10)
Requirement already satisfied: thrift>=0.9.2 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (0.13.0)
Requirement already satisfied: pendulum==1.4.4 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (1.4.4)
Requirement already satisfied: jinja2<2.11.0,>=2.10.1 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (2.10.1)
Requirement already satisfied: gunicorn<20.0,>=19.5.0 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (19.9.0)
Requirement already satisfied: argcomplete~=1.10 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (1.10.3)
Requirement already satisfied: flask-appbuilder<2.0.0,>=1.12.5 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (1.13.1)
Requirement already satisfied: lazy-object-proxy~=1.3 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (1.4.3)
Requirement already satisfied: json-merge-patch==0.2 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (0.2)
Requirement already satisfied: flask-wtf<0.15,>=0.14.2 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (0.14.2)
Requirement already satisfied: tabulate<0.9,>=0.7.5 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (0.8.6)
Requirement already satisfied: flask-caching<1.4.0,>=1.3.3 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (1.3.3)
Requirement already satisfied: configparser<3.6.0,>=3.5.0 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (3.5.3)
Requirement already satisfied: zope.deprecation<5.0,>=4.0 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (4.4.0)
Requirement already satisfied: markdown<3.0,>=2.5.2 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (2.6.11)
Requirement already satisfied: pandas<1.0.0,>=0.17.1 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (0.25.1)
Requirement already satisfied: alembic<2.0,>=1.0 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (1.1.0)
Requirement already satisfied: tzlocal<2.0.0,>=1.4 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (1.5.1)
Requirement already satisfied: graphviz>=0.12 in /opt/tljh/user/lib/python3.6/site-packages (from apache-airflow) (0.13.2)
Requirement already satisfied: six>=1.5 in /opt/tljh/user/lib/python3.6/site-packages (from python-dateutil<3,>=2.3->apache-airflow) (1.12.0)
Requirement already satisfied: certifi>=2017.4.17 in /opt/tljh/user/lib/python3.6/site-packages (from requests<3,>=2.20.0->apache-airflow) (2019.9.11)
Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /opt/tljh/user/lib/python3.6/site-packages (from requests<3,>=2.20.0->apache-airflow) (1.25.3)
Requirement already satisfied: idna<2.9,>=2.5 in /opt/tljh/user/lib/python3.6/site-packages (from requests<3,>=2.20.0->apache-airflow) (2.8)
Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /opt/tljh/user/lib/python3.6/site-packages (from requests<3,>=2.20.0->apache-airflow) (3.0.4)
Requirement already satisfied: setuptools in /opt/tljh/user/lib/python3.6/site-packages (from python-daemon<2.2,>=2.1.1->apache-airflow) (41.4.0)
Requirement already satisfied: docutils in /opt/tljh/user/lib/python3.6/site-packages (from python-daemon<2.2,>=2.1.1->apache-airflow) (0.15.2)
Requirement already satisfied: lockfile>=0.10 in /opt/tljh/user/lib/python3.6/site-packages (from python-daemon<2.2,>=2.1.1->apache-airflow) (0.12.2)
Requirement already satisfied: marshmallow>=2.0.0 in /opt/tljh/user/lib/python3.6/site-packages (from marshmallow-sqlalchemy<0.19.0,>=0.16.1->apache-airflow) (2.18.0)
Requirement already satisfied: wtforms in /opt/tljh/user/lib/python3.6/site-packages (from flask-admin==1.5.3->apache-airflow) (2.2.1)
Requirement already satisfied: PyYAML>=3.0 in /opt/tljh/user/lib/python3.6/site-packages (from flask-swagger==0.2.13->apache-airflow) (5.1.2)
Requirement already satisfied: ordereddict in /opt/tljh/user/lib/python3.6/site-packages (from funcsigs==1.0.0->apache-airflow) (1.1)
Requirement already satisfied: itsdangerous>=0.24 in /opt/tljh/user/lib/python3.6/site-packages (from flask<2.0,>=1.1.0->apache-airflow) (1.1.0)
Requirement already satisfied: Werkzeug>=0.15 in /opt/tljh/user/lib/python3.6/site-packages (from flask<2.0,>=1.1.0->apache-airflow) (0.16.0)
Requirement already satisfied: click>=5.1 in /opt/tljh/user/lib/python3.6/site-packages (from flask<2.0,>=1.1.0->apache-airflow) (7.0)
Requirement already satisfied: pytzdata>=2018.3.0.0 in /opt/tljh/user/lib/python3.6/site-packages (from pendulum==1.4.4->apache-airflow) (2019.3)
Requirement already satisfied: MarkupSafe>=0.23 in /opt/tljh/user/lib/python3.6/site-packages (from jinja2<2.11.0,>=2.10.1->apache-airflow) (1.1.1)
Requirement already satisfied: apispec[yaml]>=1.1.1<2 in /opt/tljh/user/lib/python3.6/site-packages (from flask-appbuilder<2.0.0,>=1.12.5->apache-airflow) (3.1.0)
Requirement already satisfied: Flask-OpenID<2,>=1.2.5 in /opt/tljh/user/lib/python3.6/site-packages (from flask-appbuilder<2.0.0,>=1.12.5->apache-airflow) (1.2.5)
Requirement already satisfied: marshmallow-enum<2,>=1.4.1 in /opt/tljh/user/lib/python3.6/site-packages (from flask-appbuilder<2.0.0,>=1.12.5->apache-airflow) (1.5.1)
Requirement already satisfied: colorama<1,>=0.3.9 in /opt/tljh/user/lib/python3.6/site-packages (from flask-appbuilder<2.0.0,>=1.12.5->apache-airflow) (0.4.1)
Requirement already satisfied: Flask-JWT-Extended<4,>=3.18 in /opt/tljh/user/lib/python3.6/site-packages (from flask-appbuilder<2.0.0,>=1.12.5->apache-airflow) (3.24.1)
Requirement already satisfied: prison==0.1.0 in /opt/tljh/user/lib/python3.6/site-packages (from flask-appbuilder<2.0.0,>=1.12.5->apache-airflow) (0.1.0)
Requirement already satisfied: Flask-Babel<1,>=0.11.1 in /opt/tljh/user/lib/python3.6/site-packages (from flask-appbuilder<2.0.0,>=1.12.5->apache-airflow) (0.12.2)
Requirement already satisfied: jsonschema>=3.0.1<4 in /opt/tljh/user/lib/python3.6/site-packages (from flask-appbuilder<2.0.0,>=1.12.5->apache-airflow) (3.0.2)
Requirement already satisfied: PyJWT>=1.7.1 in /opt/tljh/user/lib/python3.6/site-packages (from flask-appbuilder<2.0.0,>=1.12.5->apache-airflow) (1.7.1)
Requirement already satisfied: Flask-SQLAlchemy<3,>=2.3 in /opt/tljh/user/lib/python3.6/site-packages (from flask-appbuilder<2.0.0,>=1.12.5->apache-airflow) (2.4.1)
Requirement already satisfied: numpy>=1.13.3 in /opt/tljh/user/lib/python3.6/site-packages (from pandas<1.0.0,>=0.17.1->apache-airflow) (1.17.2)
Requirement already satisfied: pytz>=2017.2 in /opt/tljh/user/lib/python3.6/site-packages (from pandas<1.0.0,>=0.17.1->apache-airflow) (2019.2)
Requirement already satisfied: Mako in /opt/tljh/user/lib/python3.6/site-packages (from alembic<2.0,>=1.0->apache-airflow) (1.1.0)
Requirement already satisfied: python-editor>=0.3 in /opt/tljh/user/lib/python3.6/site-packages (from alembic<2.0,>=1.0->apache-airflow) (1.0.4)
Requirement already satisfied: python3-openid>=2.0 in /opt/tljh/user/lib/python3.6/site-packages (from Flask-OpenID<2,>=1.2.5->flask-appbuilder<2.0.0,>=1.12.5->apache-airflow) (3.1.0)
Requirement already satisfied: Babel>=2.3 in /opt/tljh/user/lib/python3.6/site-packages (from Flask-Babel<1,>=0.11.1->flask-appbuilder<2.0.0,>=1.12.5->apache-airflow) (2.7.0)
Requirement already satisfied: attrs>=17.4.0 in /opt/tljh/user/lib/python3.6/site-packages (from jsonschema>=3.0.1<4->flask-appbuilder<2.0.0,>=1.12.5->apache-airflow) (19.1.0)
Requirement already satisfied: pyrsistent>=0.14.0 in /opt/tljh/user/lib/python3.6/site-packages (from jsonschema>=3.0.1<4->flask-appbuilder<2.0.0,>=1.12.5->apache-airflow) (0.15.4)
Requirement already satisfied: defusedxml in /opt/tljh/user/lib/python3.6/site-packages (from python3-openid>=2.0->Flask-OpenID<2,>=1.2.5->flask-appbuilder<2.0.0,>=1.12.5->apache-airflow) (0.6.0)
In [ ]:
%%bash
# initialize the database
airflow initdb
DB: sqlite:////home/jupyter-sheng_wei/airflow/airflow.db
[2019-12-02 14:25:56,971] {db.py:368} INFO - Creating tables
Done.
INFO  [alembic.runtime.migration] Context impl SQLiteImpl.
INFO  [alembic.runtime.migration] Will assume non-transactional DDL.
INFO  [alembic.runtime.migration] Running upgrade  -> e3a246e0dc1, current schema
INFO  [alembic.runtime.migration] Running upgrade e3a246e0dc1 -> 1507a7289a2f, create is_encrypted
/opt/tljh/user/lib/python3.6/site-packages/alembic/ddl/sqlite.py:39: UserWarning: Skipping unsupported ALTER for creation of implicit constraint
  "Skipping unsupported ALTER for "
INFO  [alembic.runtime.migration] Running upgrade 1507a7289a2f -> 13eb55f81627, maintain history for compatibility with earlier migrations
INFO  [alembic.runtime.migration] Running upgrade 13eb55f81627 -> 338e90f54d61, More logging into task_instance
INFO  [alembic.runtime.migration] Running upgrade 338e90f54d61 -> 52d714495f0, job_id indices
INFO  [alembic.runtime.migration] Running upgrade 52d714495f0 -> 502898887f84, Adding extra to Log
INFO  [alembic.runtime.migration] Running upgrade 502898887f84 -> 1b38cef5b76e, add dagrun
INFO  [alembic.runtime.migration] Running upgrade 1b38cef5b76e -> 2e541a1dcfed, task_duration
INFO  [alembic.runtime.migration] Running upgrade 2e541a1dcfed -> 40e67319e3a9, dagrun_config
INFO  [alembic.runtime.migration] Running upgrade 40e67319e3a9 -> 561833c1c74b, add password column to user
INFO  [alembic.runtime.migration] Running upgrade 561833c1c74b -> 4446e08588, dagrun start end
INFO  [alembic.runtime.migration] Running upgrade 4446e08588 -> bbc73705a13e, Add notification_sent column to sla_miss
INFO  [alembic.runtime.migration] Running upgrade bbc73705a13e -> bba5a7cfc896, Add a column to track the encryption state of the 'Extra' field in connection
INFO  [alembic.runtime.migration] Running upgrade bba5a7cfc896 -> 1968acfc09e3, add is_encrypted column to variable table
INFO  [alembic.runtime.migration] Running upgrade 1968acfc09e3 -> 2e82aab8ef20, rename user table
INFO  [alembic.runtime.migration] Running upgrade 2e82aab8ef20 -> 211e584da130, add TI state index
INFO  [alembic.runtime.migration] Running upgrade 211e584da130 -> 64de9cddf6c9, add task fails journal table
INFO  [alembic.runtime.migration] Running upgrade 64de9cddf6c9 -> f2ca10b85618, add dag_stats table
INFO  [alembic.runtime.migration] Running upgrade f2ca10b85618 -> 4addfa1236f1, Add fractional seconds to mysql tables
INFO  [alembic.runtime.migration] Running upgrade 4addfa1236f1 -> 8504051e801b, xcom dag task indices
INFO  [alembic.runtime.migration] Running upgrade 8504051e801b -> 5e7d17757c7a, add pid field to TaskInstance
INFO  [alembic.runtime.migration] Running upgrade 5e7d17757c7a -> 127d2bf2dfa7, Add dag_id/state index on dag_run table
INFO  [alembic.runtime.migration] Running upgrade 127d2bf2dfa7 -> cc1e65623dc7, add max tries column to task instance
INFO  [alembic.runtime.migration] Running upgrade cc1e65623dc7 -> bdaa763e6c56, Make xcom value column a large binary
INFO  [alembic.runtime.migration] Running upgrade bdaa763e6c56 -> 947454bf1dff, add ti job_id index
INFO  [alembic.runtime.migration] Running upgrade 947454bf1dff -> d2ae31099d61, Increase text size for MySQL (not relevant for other DBs' text types)
INFO  [alembic.runtime.migration] Running upgrade d2ae31099d61 -> 0e2a74e0fc9f, Add time zone awareness
INFO  [alembic.runtime.migration] Running upgrade d2ae31099d61 -> 33ae817a1ff4, kubernetes_resource_checkpointing
INFO  [alembic.runtime.migration] Running upgrade 33ae817a1ff4 -> 27c6a30d7c24, kubernetes_resource_checkpointing
INFO  [alembic.runtime.migration] Running upgrade 27c6a30d7c24 -> 86770d1215c0, add kubernetes scheduler uniqueness
INFO  [alembic.runtime.migration] Running upgrade 86770d1215c0, 0e2a74e0fc9f -> 05f30312d566, merge heads
INFO  [alembic.runtime.migration] Running upgrade 05f30312d566 -> f23433877c24, fix mysql not null constraint
INFO  [alembic.runtime.migration] Running upgrade f23433877c24 -> 856955da8476, fix sqlite foreign key
INFO  [alembic.runtime.migration] Running upgrade 856955da8476 -> 9635ae0956e7, index-faskfail
INFO  [alembic.runtime.migration] Running upgrade 9635ae0956e7 -> dd25f486b8ea, add idx_log_dag
INFO  [alembic.runtime.migration] Running upgrade dd25f486b8ea -> bf00311e1990, add index to taskinstance
INFO  [alembic.runtime.migration] Running upgrade 9635ae0956e7 -> 0a2a5b66e19d, add task_reschedule table
INFO  [alembic.runtime.migration] Running upgrade 0a2a5b66e19d, bf00311e1990 -> 03bc53e68815, merge_heads_2
INFO  [alembic.runtime.migration] Running upgrade 03bc53e68815 -> 41f5f12752f8, add superuser field
INFO  [alembic.runtime.migration] Running upgrade 41f5f12752f8 -> c8ffec048a3b, add fields to dag
INFO  [alembic.runtime.migration] Running upgrade c8ffec048a3b -> dd4ecb8fbee3, Add schedule interval to dag
INFO  [alembic.runtime.migration] Running upgrade dd4ecb8fbee3 -> 939bb1e647c8, task reschedule fk on cascade delete
INFO  [alembic.runtime.migration] Running upgrade 939bb1e647c8 -> 6e96a59344a4, Make TaskInstance.pool not nullable
INFO  [alembic.runtime.migration] Running upgrade 6e96a59344a4 -> 74effc47d867, change datetime to datetime2(6) on MSSQL tables
INFO  [alembic.runtime.migration] Running upgrade c8ffec048a3b -> a56c9515abdc, Remove dag_stat table
INFO  [alembic.runtime.migration] Running upgrade 939bb1e647c8 -> 004c1210f153, increase queue name size limit
In [ ]:
%%bash
# start the web server, default port is 8080
airflow webserver -p 8080
bash: fg: %%bash: no such job
  ____________       _____________
 ____    |__( )_________  __/__  /________      __
____  /| |_  /__  ___/_  /_ __  /_  __ \_ | /| / /
___  ___ |  / _  /   _  __/ _  / / /_/ /_ |/ |/ /
 _/_/  |_/_/  /_/    /_/    /_/  \____/____/|__/
[2019-12-02 14:30:48,749] {__init__.py:51} INFO - Using executor SequentialExecutor
[2019-12-02 14:30:48,750] {dagbag.py:92} INFO - Filling up the DagBag from /home/jupyter-sheng_wei/airflow/dags
Running the Gunicorn Server with:
Workers: 4 sync
Host: 0.0.0.0:8080
Timeout: 120
Logfiles: - -
=================================================================            
[2019-12-02 14:30:49 +0900] [14677] [INFO] Starting gunicorn 19.9.0
[2019-12-02 14:30:49 +0900] [14677] [INFO] Listening at: http://0.0.0.0:8080 (14677)
[2019-12-02 14:30:49 +0900] [14677] [INFO] Using worker: sync
[2019-12-02 14:30:49 +0900] [14682] [INFO] Booting worker with pid: 14682
[2019-12-02 14:30:50 +0900] [14683] [INFO] Booting worker with pid: 14683
[2019-12-02 14:30:50 +0900] [14684] [INFO] Booting worker with pid: 14684
[2019-12-02 14:30:50 +0900] [14685] [INFO] Booting worker with pid: 14685
[2019-12-02 14:30:50,996] {__init__.py:51} INFO - Using executor SequentialExecutor
[2019-12-02 14:30:51,008] {dagbag.py:92} INFO - Filling up the DagBag from /home/jupyter-sheng_wei/airflow/dags
[2019-12-02 14:30:51,289] {__init__.py:51} INFO - Using executor SequentialExecutor
[2019-12-02 14:30:51,304] {dagbag.py:92} INFO - Filling up the DagBag from /home/jupyter-sheng_wei/airflow/dags
[2019-12-02 14:30:51,442] {__init__.py:51} INFO - Using executor SequentialExecutor
[2019-12-02 14:30:51,456] {dagbag.py:92} INFO - Filling up the DagBag from /home/jupyter-sheng_wei/airflow/dags
[2019-12-02 14:30:51,469] {__init__.py:51} INFO - Using executor SequentialExecutor
[2019-12-02 14:30:51,480] {dagbag.py:92} INFO - Filling up the DagBag from /home/jupyter-sheng_wei/airflow/dags
123.226.242.94 - - [02/Dec/2019:14:31:07 +0900] "GET / HTTP/1.1" 302 221 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36"
123.226.242.94 - - [02/Dec/2019:14:31:08 +0900] "GET /admin/ HTTP/1.1" 200 115313 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36"
123.226.242.94 - - [02/Dec/2019:14:31:08 +0900] "GET /admin/airflow/blocked HTTP/1.1" 200 2 "http://jhub.name:8080/admin/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36"
123.226.242.94 - - [02/Dec/2019:14:31:08 +0900] "GET /admin/airflow/dag_stats HTTP/1.1" 200 9486 "http://jhub.name:8080/admin/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36"
123.226.242.94 - - [02/Dec/2019:14:31:08 +0900] "GET /admin/airflow/task_stats HTTP/1.1" 200 30510 "http://jhub.name:8080/admin/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36"
[2019-12-02 14:31:23 +0900] [14677] [INFO] Handling signal: ttin
[2019-12-02 14:31:23 +0900] [14687] [INFO] Booting worker with pid: 14687
[2019-12-02 14:31:23,855] {__init__.py:51} INFO - Using executor SequentialExecutor
[2019-12-02 14:31:23,856] {dagbag.py:92} INFO - Filling up the DagBag from /home/jupyter-sheng_wei/airflow/dags
[2019-12-02 14:31:24 +0900] [14677] [INFO] Handling signal: ttou
[2019-12-02 14:31:24 +0900] [14682] [INFO] Worker exiting (pid: 14682)
[2019-12-02 14:31:30 +0900] [14677] [INFO] Handling signal: int
[2019-12-02 14:31:30 +0900] [14683] [INFO] Worker exiting (pid: 14683)
[2019-12-02 14:31:30 +0900] [14684] [INFO] Worker exiting (pid: 14684)
[2019-12-02 14:31:30 +0900] [14685] [INFO] Worker exiting (pid: 14685)
[2019-12-02 14:31:30 +0900] [14687] [INFO] Worker exiting (pid: 14687)
[2019-12-02 14:31:31 +0900] [14677] [INFO] Shutting down: Master
In [ ]:
# start the scheduler
airflow scheduler
  ____________       _____________
 ____    |__( )_________  __/__  /________      __
____  /| |_  /__  ___/_  /_ __  /_  __ \_ | /| / /
___  ___ |  / _  /   _  __/ _  / / /_/ /_ |/ |/ /
 _/_/  |_/_/  /_/    /_/    /_/  \____/____/|__/
[2019-12-02 14:33:56,327] {__init__.py:51} INFO - Using executor SequentialExecutor
[2019-12-02 14:33:56,343] {scheduler_job.py:1320} INFO - Starting the scheduler
[2019-12-02 14:33:56,343] {scheduler_job.py:1328} INFO - Running execute loop for -1 seconds
[2019-12-02 14:33:56,345] {scheduler_job.py:1329} INFO - Processing each file at most -1 times
[2019-12-02 14:33:56,346] {scheduler_job.py:1332} INFO - Searching for files in /home/jupyter-sheng_wei/airflow/dags
[2019-12-02 14:33:56,351] {scheduler_job.py:1334} INFO - There are 20 files in /home/jupyter-sheng_wei/airflow/dags
[2019-12-02 14:33:56,354] {scheduler_job.py:1382} INFO - Resetting orphaned tasks for active dag runs
[2019-12-02 14:33:56,366] {dag_processing.py:556} INFO - Launched DagFileProcessorManager with pid: 14781
[2019-12-02 14:33:56,374] {settings.py:54} INFO - Configured default timezone <Timezone [UTC]>
[2019-12-02 14:33:56,384] {dag_processing.py:760} ERROR - Cannot use more than 1 thread when using sqlite. Setting parallelism to 1
[2019-12-02 14:34:11,631] {helpers.py:308} INFO - Sending Signals.SIGTERM to GPID 14781
[2019-12-02 14:34:11,636] {helpers.py:286} INFO - Process psutil.Process(pid=14781, status='terminated') (14781) terminated with exit code 0
[2019-12-02 14:34:11,637] {scheduler_job.py:1361} INFO - Exited execute loop
Read More

2019-10-20
Try NBViewer

In [ ]:
!sudo chown jupyter-sheng_wei:docker /var/run/docker.sock
!docker run -p 8080:8080 jupyter/nbviewer
In [ ]:
!sudo -HE pip install nbviewer
!sudo -E python -m nbviewer --help
In [ ]:
!echo JUPYTERHUB_SERVICE_PREFIX=$JUPYTERHUB_SERVICE_PREFIX
JUPYTERHUB_SERVICE_PREFIX=/user/sheng_wei/
In [ ]:
!sudo bash -c 'echo JUPYTERHUB_SERVICE_PREFIX=$JUPYTERHUB_SERVICE_PREFIX'
JUPYTERHUB_SERVICE_PREFIX=
In [ ]:
!ls -lahd /home/jupyter-sheng_wei
!ls -lahd /home/jupyter-sheng_wei/hexo && echo
!sudo python -m nbviewer --base-url=/ --localfiles=/home/jupyter-sheng_wei/hexo --no-cache --logging=debug
drwxr-x--- 24 jupyter-sheng_wei jupyterhub-users 4.0K Oct 20 21:06 /home/jupyter-sheng_wei
drwxr-xr-x 13 jupyter-sheng_wei jupyterhub-users 4.0K Oct 20 18:58 /home/jupyter-sheng_wei/hexo

[I 191020 22:23:36 app:124] Not indexing notebooks
[I 191020 22:23:36 app:128] Not using cache
fatal: not a git repository (or any of the parent directories): .git
[E 191020 22:23:36 app:166] Failed to get git info: Command '['git', 'log', '-1', '--format=%H\n%s\n%cD']' returned non-zero exit status 128.
[D 191020 22:23:36 selector_events:65] Using selector: EpollSelector
[W 191020 22:23:36 app:250] Serving local notebooks in /home/jupyter-sheng_wei/hexo, this can be a security risk
[I 191020 22:23:36 app:330] Listening on 0.0.0.0:5000, path /
[E 191020 22:23:40 web:1670] Uncaught exception GET /faq (110.3.247.172)
    HTTPServerRequest(protocol='http', host='jhub.name:5000', method='GET', uri='/faq', version='HTTP/1.1', remote_ip='110.3.247.172')
    Traceback (most recent call last):
      File "/opt/tljh/user/lib/python3.6/site-packages/tornado/web.py", line 1590, in _execute
        result = method(*self.path_args, **self.path_kwargs)
      File "/opt/tljh/user/lib/python3.6/site-packages/nbviewer/handlers.py", line 44, in get
        self.finish(self.render_template('faq.md'))
      File "/opt/tljh/user/lib/python3.6/site-packages/nbviewer/providers/base.py", line 249, in render_template
        return template.render(**ns)
      File "/opt/tljh/user/lib/python3.6/site-packages/jinja2/asyncsupport.py", line 76, in render
        return original_render(self, *args, **kwargs)
      File "/opt/tljh/user/lib/python3.6/site-packages/jinja2/environment.py", line 1008, in render
        return self.environment.handle_exception(exc_info, True)
      File "/opt/tljh/user/lib/python3.6/site-packages/jinja2/environment.py", line 780, in handle_exception
        reraise(exc_type, exc_value, tb)
      File "/opt/tljh/user/lib/python3.6/site-packages/jinja2/_compat.py", line 37, in reraise
        raise value.with_traceback(tb)
      File "/opt/tljh/user/lib/python3.6/site-packages/nbviewer/templates/faq.md", line 1, in top-level template code
        {% extends "layout.html" %}
      File "/opt/tljh/user/lib/python3.6/site-packages/nbviewer/templates/layout.html", line 118, in top-level template code
        {% block container %}<div class="container container-main">
      File "/opt/tljh/user/lib/python3.6/site-packages/nbviewer/templates/layout.html", line 119, in block "container"
        {% block body %}{% endblock %}
      File "/opt/tljh/user/lib/python3.6/site-packages/nbviewer/templates/faq.md", line 5, in block "body"
        {% filter markdown(extensions=['headerid(level=3)','toc'], extension_configs= {'toc' : [('anchorlink', True)]}) %}
      File "/opt/tljh/user/lib/python3.6/site-packages/markdown/core.py", line 390, in markdown
        md = Markdown(**kwargs)
      File "/opt/tljh/user/lib/python3.6/site-packages/markdown/core.py", line 100, in __init__
        configs=kwargs.get('extension_configs', {}))
      File "/opt/tljh/user/lib/python3.6/site-packages/markdown/core.py", line 126, in registerExtensions
        ext = self.build_extension(ext, configs.get(ext, {}))
      File "/opt/tljh/user/lib/python3.6/site-packages/markdown/core.py", line 166, in build_extension
        module = importlib.import_module(ext_name)
      File "/opt/tljh/user/lib/python3.6/importlib/__init__.py", line 126, in import_module
        return _bootstrap._gcd_import(name[level:], package, level)
      File "<frozen importlib._bootstrap>", line 994, in _gcd_import
      File "<frozen importlib._bootstrap>", line 971, in _find_and_load
      File "<frozen importlib._bootstrap>", line 953, in _find_and_load_unlocked
    ModuleNotFoundError: No module named 'headerid(level=3)'
[E 191020 22:23:40 log:52] {
      "Host": "jhub.name:5000",
      "Connection": "keep-alive",
      "Pragma": "no-cache",
      "Cache-Control": "no-cache",
      "Upgrade-Insecure-Requests": "1",
      "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36",
      "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3",
      "Referer": "http://jhub.name:5000/localfile/source/notebooks/Try-Plotly-Dash.ipynb",
      "Accept-Encoding": "gzip, deflate",
      "Accept-Language": "ja,en-US;q=0.9,en;q=0.8,zh-CN;q=0.7,zh;q=0.6",
      "Cookie": "_xsrf=2|a81713c9|4a10b65ad1b4264e0b304a10743350a3|1570958079; G_ENABLED_IDPS=google; mjx.latest=2.7.6"
    }
[E 191020 22:23:40 log:53] 500 GET /faq (110.3.247.172) 143.11ms referer="http://jhub.name:5000/localfile/source/notebooks/Try-Plotly-Dash.ipynb" user-agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36"
[D 191020 22:23:40 log:53] 200 GET /static/build/styles.css?v=20d08094b44c75ee15fd5045973d36e5 (110.3.247.172) 7.74ms
[D 191020 22:23:40 log:53] 200 GET /static/components/requirejs/require.js?v=6da8be361b9ee26c5e721e76c6d4afce (110.3.247.172) 4.48ms
[D 191020 22:23:40 log:53] 200 GET /static/components/moment/min/moment.min.js?v=89f87298ad94aa1e6b92f42eb66da043 (110.3.247.172) 2.21ms
[D 191020 22:23:40 log:53] 200 GET /static/components/bootstrap/js/bootstrap.min.js?v=5869c96cc8f19086aee625d670d741f9 (110.3.247.172) 2.07ms
[D 191020 22:23:40 log:53] 200 GET /static/img/nav_logo.svg?v=479cefe8d932fb14a67b93911b97d70f (110.3.247.172) 0.97ms
[D 191020 22:23:40 log:53] 200 GET /static/components/jquery/dist/jquery.min.js?v=e071abda8fe61194711cfc2ab99fe104 (110.3.247.172) 13.51ms
[D 191020 22:23:40 log:53] 200 GET /static/components/headroom.js/dist/headroom.min.js?v=b0a311ea668f8e768ea375f4a7abb81c (110.3.247.172) 1.11ms
[D 191020 22:23:41 log:53] 200 GET /static/components/headroom.js/dist/jQuery.headroom.min.js?v=f3a1bae118315d0c234afc74dc6aab71 (110.3.247.172) 1.01ms
[D 191020 22:23:52 log:53] 200 GET /static/ico/ipynb_icon_16x16.png (110.3.247.172) 0.77ms
^C
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/opt/tljh/user/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/opt/tljh/user/lib/python3.6/site-packages/nbviewer/__main__.py", line 2, in <module>
    main()
  File "/opt/tljh/user/lib/python3.6/site-packages/nbviewer/app.py", line 332, in main
    ioloop.IOLoop.current().start()
  File "/opt/tljh/user/lib/python3.6/site-packages/tornado/platform/asyncio.py", line 132, in start
    self.asyncio_loop.run_forever()
  File "/opt/tljh/user/lib/python3.6/asyncio/base_events.py", line 427, in run_forever
    self._run_once()
  File "/opt/tljh/user/lib/python3.6/asyncio/base_events.py", line 1404, in _run_once
    event_list = self._selector.select(timeout)
  File "/opt/tljh/user/lib/python3.6/selectors.py", line 445, in select
    fd_event_list = self._epoll.poll(timeout, max_ev)
KeyboardInterrupt

↑ Just skip the problem of ModuleNotFoundError: No module named 'headerid(level=3)' at /faq.

In [ ]:
!docker run -p 5000:5000 jupyter/nbviewer python -m nbviewer --base-url=/ --localfiles=/ --logging=debug

Try to Understand the Mechanism of NBViewer.

https://github.com/jupyter/nbviewer/blob/master/nbviewer/app.py

Read More

2019-10-20
Try Voila Dashboards

Try Voilà

In [ ]:
!voila ~
In [ ]:
snippet = !curl -s http://jhub.name:8866/voila/render/nbgitpuller/binder/link_generator.ipynb | grep -oe '{[^{}]*hub_url[^{}]*}'
import json
json.loads(snippet[0])
Out[ ]:
{'_dom_classes': [],
 '_model_module': '@jupyter-widgets/controls',
 '_model_module_version': '1.4.0',
 '_model_name': 'TextModel',
 '_view_count': None,
 '_view_module': '@jupyter-widgets/controls',
 '_view_module_version': '1.4.0',
 '_view_name': 'TextView',
 'continuous_update': True,
 'description': 'hub_url',
 'description_tooltip': None,
 'disabled': False,
 'layout': 'IPY_MODEL_853d8ed268f846f199a0d40ed2955d76',
 'placeholder': '\u200b',
 'style': 'IPY_MODEL_d250904f9d7f4ca2ac058bd27f30dd08',
 'value': ''}

Compare to Commuter

In [ ]:
!cd ~ && commuter
In [ ]:
snippet = !curl -s http://jhub.name:4000/view/nbgitpuller/binder/link_generator.ipynb | grep -oe '<[^<>]*>[^<>]*interactive[^<>]*</[^<>]*>'
from IPython.display import HTML
HTML(snippet[0])
Out[ ]:
interactive(children=(Text(value='', description='hub_url'), Text(value='', description='clone_cmd'), Text(val…

So the Voila with Notebook is like Ploty-Dash with Python. Voila can render ipywidget, while NBViewer/Commuter can just display ipynb without ipywidget-rendering.

Voilà can display ipywidget-rendered ipynb via local file system.

Voilà Gallery can display ipywidget-rendered ipynb via Github etc. by using repo2docker, exactly the same way Binder does.

Read More

2019-10-19
Try Freeze

In [ ]:
!sudo -E pip install -U jupyter_contrib_nbextensions
In [ ]:
!sudo -E jupyter contrib nbextension install --sys-prefix
[I 16:02:13 InstallContribNbextensionsApp] jupyter contrib nbextension install --sys-prefix
[I 16:02:13 InstallContribNbextensionsApp] Installing jupyter_contrib_nbextensions nbextension files to jupyter data directory
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/table_beautifier -> table_beautifier
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/table_beautifier/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/table_beautifier/main.js -> /opt/tljh/user/share/jupyter/nbextensions/table_beautifier/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/table_beautifier/table_beautifier.yaml -> /opt/tljh/user/share/jupyter/nbextensions/table_beautifier/table_beautifier.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/table_beautifier/main.css -> /opt/tljh/user/share/jupyter/nbextensions/table_beautifier/main.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/table_beautifier/README.md -> /opt/tljh/user/share/jupyter/nbextensions/table_beautifier/README.md
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/python-markdown -> python-markdown
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/python-markdown/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/python-markdown/python-markdown.png -> /opt/tljh/user/share/jupyter/nbextensions/python-markdown/python-markdown.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/python-markdown/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/python-markdown/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/python-markdown/main.js -> /opt/tljh/user/share/jupyter/nbextensions/python-markdown/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/python-markdown/python-markdown.yaml -> /opt/tljh/user/share/jupyter/nbextensions/python-markdown/python-markdown.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/python-markdown/python-markdown-post.png -> /opt/tljh/user/share/jupyter/nbextensions/python-markdown/python-markdown-post.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/python-markdown/main.css -> /opt/tljh/user/share/jupyter/nbextensions/python-markdown/main.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/python-markdown/trusted.png -> /opt/tljh/user/share/jupyter/nbextensions/python-markdown/trusted.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/python-markdown/untrusted.png -> /opt/tljh/user/share/jupyter/nbextensions/python-markdown/untrusted.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/python-markdown/python-markdown-pre.png -> /opt/tljh/user/share/jupyter/nbextensions/python-markdown/python-markdown-pre.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_input -> hide_input
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/hide_input/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_input/hide-input.yaml -> /opt/tljh/user/share/jupyter/nbextensions/hide_input/hide-input.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_input/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/hide_input/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_input/main.js -> /opt/tljh/user/share/jupyter/nbextensions/hide_input/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_input/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/hide_input/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding -> codefolding
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/codefolding/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/codefolding_editor.yaml -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding_editor.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/codefolding_indent_folded_2.png -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding_indent_folded_2.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/codefolding_editor.png -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding_editor.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/codefolding_firstline_folded.png -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding_firstline_folded.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/main.js -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/firstline-fold.js -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/firstline-fold.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/codefolding_firstline_unfolded.png -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding_firstline_unfolded.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/magic-fold.js -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/magic-fold.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/foldgutter.css -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/foldgutter.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/edit.js -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/edit.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/magic-unfolded.png -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/magic-unfolded.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/magic-folded.png -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/magic-folded.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/codefolding.yaml -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/codefolding_indent_folded_1.png -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding_indent_folded_1.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding/codefolding_indent_unfolded.png -> /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding_indent_unfolded.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codefolding -> codefolding
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding_editor.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding_indent_folded_2.png
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding_editor.png
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding_firstline_folded.png
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/main.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/firstline-fold.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding_firstline_unfolded.png
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/magic-fold.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/foldgutter.css
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/edit.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/magic-unfolded.png
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/magic-folded.png
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding_indent_folded_1.png
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/codefolding/codefolding_indent_unfolded.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/varInspector -> varInspector
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/varInspector/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/varInspector/varInspector.yaml -> /opt/tljh/user/share/jupyter/nbextensions/varInspector/varInspector.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/varInspector/tablesorter_LICENSE.txt -> /opt/tljh/user/share/jupyter/nbextensions/varInspector/tablesorter_LICENSE.txt
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/varInspector/demo.gif -> /opt/tljh/user/share/jupyter/nbextensions/varInspector/demo.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/varInspector/main.js -> /opt/tljh/user/share/jupyter/nbextensions/varInspector/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/varInspector/var_list.py -> /opt/tljh/user/share/jupyter/nbextensions/varInspector/var_list.py
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/varInspector/var_list.r -> /opt/tljh/user/share/jupyter/nbextensions/varInspector/var_list.r
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/varInspector/main.css -> /opt/tljh/user/share/jupyter/nbextensions/varInspector/main.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/varInspector/jquery.tablesorter.min.js -> /opt/tljh/user/share/jupyter/nbextensions/varInspector/jquery.tablesorter.min.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/varInspector/README.md -> /opt/tljh/user/share/jupyter/nbextensions/varInspector/README.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/varInspector/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/varInspector/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/varInspector/__pycache__
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/varInspector/__pycache__/var_list.cpython-36.pyc -> /opt/tljh/user/share/jupyter/nbextensions/varInspector/__pycache__/var_list.cpython-36.pyc
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/move_selected_cells -> move_selected_cells
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/move_selected_cells/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/move_selected_cells/main.js -> /opt/tljh/user/share/jupyter/nbextensions/move_selected_cells/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/move_selected_cells/move_selected_cells.yaml -> /opt/tljh/user/share/jupyter/nbextensions/move_selected_cells/move_selected_cells.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/move_selected_cells/README.md -> /opt/tljh/user/share/jupyter/nbextensions/move_selected_cells/README.md
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/limit_output -> limit_output
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/limit_output/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/limit_output/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/limit_output/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/limit_output/main.js -> /opt/tljh/user/share/jupyter/nbextensions/limit_output/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/limit_output/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/limit_output/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/limit_output/limit-output.yaml -> /opt/tljh/user/share/jupyter/nbextensions/limit_output/limit-output.yaml
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/scroll_down -> scroll_down
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/scroll_down/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/scroll_down/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/scroll_down/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/scroll_down/main.js -> /opt/tljh/user/share/jupyter/nbextensions/scroll_down/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/scroll_down/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/scroll_down/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/scroll_down/config.yaml -> /opt/tljh/user/share/jupyter/nbextensions/scroll_down/config.yaml
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_font_size -> code_font_size
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/code_font_size/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_font_size/code_font_size.yaml -> /opt/tljh/user/share/jupyter/nbextensions/code_font_size/code_font_size.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_font_size/code_font_size.js -> /opt/tljh/user/share/jupyter/nbextensions/code_font_size/code_font_size.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_font_size/README.md -> /opt/tljh/user/share/jupyter/nbextensions/code_font_size/README.md
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/runtools -> runtools
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/runtools/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/runtools/runtools.yaml -> /opt/tljh/user/share/jupyter/nbextensions/runtools/runtools.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/runtools/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/runtools/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/runtools/demo.gif -> /opt/tljh/user/share/jupyter/nbextensions/runtools/demo.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/runtools/main.js -> /opt/tljh/user/share/jupyter/nbextensions/runtools/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/runtools/runtools_marker.png -> /opt/tljh/user/share/jupyter/nbextensions/runtools/runtools_marker.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/runtools/cellstate.js -> /opt/tljh/user/share/jupyter/nbextensions/runtools/cellstate.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/runtools/gutter.css -> /opt/tljh/user/share/jupyter/nbextensions/runtools/gutter.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/runtools/runtools_execute.png -> /opt/tljh/user/share/jupyter/nbextensions/runtools/runtools_execute.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/runtools/main.css -> /opt/tljh/user/share/jupyter/nbextensions/runtools/main.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/runtools/runtools_nb.png -> /opt/tljh/user/share/jupyter/nbextensions/runtools/runtools_nb.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/runtools/runtools_lock.png -> /opt/tljh/user/share/jupyter/nbextensions/runtools/runtools_lock.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/runtools/runtools_show_hide.png -> /opt/tljh/user/share/jupyter/nbextensions/runtools/runtools_show_hide.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/runtools/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/runtools/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/runtools/annotations.odg -> /opt/tljh/user/share/jupyter/nbextensions/runtools/annotations.odg
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/export_embedded -> export_embedded
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/export_embedded/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/export_embedded/export_embedded.yaml -> /opt/tljh/user/share/jupyter/nbextensions/export_embedded/export_embedded.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/export_embedded/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/export_embedded/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/export_embedded/main.js -> /opt/tljh/user/share/jupyter/nbextensions/export_embedded/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/export_embedded/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/export_embedded/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets -> snippets
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/snippets/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets/main.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets/snippets.json -> /opt/tljh/user/share/jupyter/nbextensions/snippets/snippets.json
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets/snippets.yaml -> /opt/tljh/user/share/jupyter/nbextensions/snippets/snippets.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets/README.md -> /opt/tljh/user/share/jupyter/nbextensions/snippets/README.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets/snippets-demo.gif -> /opt/tljh/user/share/jupyter/nbextensions/snippets/snippets-demo.gif
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/livemdpreview -> livemdpreview
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/livemdpreview/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/livemdpreview/livemdpreview.js -> /opt/tljh/user/share/jupyter/nbextensions/livemdpreview/livemdpreview.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/livemdpreview/livemdpreview.yml -> /opt/tljh/user/share/jupyter/nbextensions/livemdpreview/livemdpreview.yml
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/skip-traceback -> skip-traceback
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/skip-traceback/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/skip-traceback/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/skip-traceback/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/skip-traceback/skip-traceback.yaml -> /opt/tljh/user/share/jupyter/nbextensions/skip-traceback/skip-traceback.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/skip-traceback/main.js -> /opt/tljh/user/share/jupyter/nbextensions/skip-traceback/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/skip-traceback/skip-traceback.png -> /opt/tljh/user/share/jupyter/nbextensions/skip-traceback/skip-traceback.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/skip-traceback/traceback.png -> /opt/tljh/user/share/jupyter/nbextensions/skip-traceback/traceback.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/skip-traceback/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/skip-traceback/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/init_cell -> init_cell
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/init_cell/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/init_cell/main.js -> /opt/tljh/user/share/jupyter/nbextensions/init_cell/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/init_cell/init_cell.yaml -> /opt/tljh/user/share/jupyter/nbextensions/init_cell/init_cell.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/init_cell/README.md -> /opt/tljh/user/share/jupyter/nbextensions/init_cell/README.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/init_cell/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/init_cell/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/init_cell/cell_toolbar_menu.png -> /opt/tljh/user/share/jupyter/nbextensions/init_cell/cell_toolbar_menu.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/autoscroll -> autoscroll
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/autoscroll/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/autoscroll/main.js -> /opt/tljh/user/share/jupyter/nbextensions/autoscroll/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/autoscroll/autoscroll.yaml -> /opt/tljh/user/share/jupyter/nbextensions/autoscroll/autoscroll.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/autoscroll/README.md -> /opt/tljh/user/share/jupyter/nbextensions/autoscroll/README.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/autoscroll/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/autoscroll/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codemirror_mode_extensions -> codemirror_mode_extensions
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/codemirror_mode_extensions/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codemirror_mode_extensions/main.js -> /opt/tljh/user/share/jupyter/nbextensions/codemirror_mode_extensions/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/codemirror_mode_extensions/codemirror_mode_extensions.yaml -> /opt/tljh/user/share/jupyter/nbextensions/codemirror_mode_extensions/codemirror_mode_extensions.yaml
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/comment-uncomment -> comment-uncomment
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/comment-uncomment/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/comment-uncomment/comment-uncomment.yaml -> /opt/tljh/user/share/jupyter/nbextensions/comment-uncomment/comment-uncomment.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/comment-uncomment/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/comment-uncomment/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/comment-uncomment/main.js -> /opt/tljh/user/share/jupyter/nbextensions/comment-uncomment/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/comment-uncomment/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/comment-uncomment/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/gist_it -> gist_it
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/gist_it/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/gist_it/gist_it.yaml -> /opt/tljh/user/share/jupyter/nbextensions/gist_it/gist_it.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/gist_it/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/gist_it/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/gist_it/main.js -> /opt/tljh/user/share/jupyter/nbextensions/gist_it/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/gist_it/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/gist_it/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/select_keymap -> select_keymap
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/select_keymap/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/select_keymap/main.js -> /opt/tljh/user/share/jupyter/nbextensions/select_keymap/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/select_keymap/select_keymap.png -> /opt/tljh/user/share/jupyter/nbextensions/select_keymap/select_keymap.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/select_keymap/README.md -> /opt/tljh/user/share/jupyter/nbextensions/select_keymap/README.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/select_keymap/select_keymap.yaml -> /opt/tljh/user/share/jupyter/nbextensions/select_keymap/select_keymap.yaml
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/freeze -> freeze
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/freeze/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/freeze/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/freeze/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/freeze/main.js -> /opt/tljh/user/share/jupyter/nbextensions/freeze/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/freeze/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/freeze/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/freeze/config.yaml -> /opt/tljh/user/share/jupyter/nbextensions/freeze/config.yaml
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toggle_all_line_numbers -> toggle_all_line_numbers
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/toggle_all_line_numbers/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toggle_all_line_numbers/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/toggle_all_line_numbers/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toggle_all_line_numbers/main.js -> /opt/tljh/user/share/jupyter/nbextensions/toggle_all_line_numbers/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toggle_all_line_numbers/main.yaml -> /opt/tljh/user/share/jupyter/nbextensions/toggle_all_line_numbers/main.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toggle_all_line_numbers/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/toggle_all_line_numbers/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor -> keyboard_shortcut_editor
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/readme_menu_item.png -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/readme_menu_item.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/readme_shortcut_editor_success.png -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/readme_shortcut_editor_success.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/readme_comma.png -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/readme_comma.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/readme_add_new_link.png -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/readme_add_new_link.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/main.js -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/quickhelp_shim.js -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/quickhelp_shim.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/keyboard_shortcut_editor.yaml -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/keyboard_shortcut_editor.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/kse_components.js -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/kse_components.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/readme_shortcut_editor_blank.png -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/readme_shortcut_editor_blank.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/main.css -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/main.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/readme_dropdown.png -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/readme_dropdown.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/readme_conflict.png -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/readme_conflict.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/readme_undefined_key.png -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/readme_undefined_key.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/README.md -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/README.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/readme_reset_disabled.png -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/readme_reset_disabled.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/keyboard_shortcut_editor/readme_add_new_select_action.png -> /opt/tljh/user/share/jupyter/nbextensions/keyboard_shortcut_editor/readme_add_new_select_action.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu -> snippets_menu
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/screenshot3.png -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/screenshot3.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/screenshot2.png -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/screenshot2.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/main.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenu_markdown.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenu_markdown.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenu_python.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenu_python.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/examples_for_custom.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/examples_for_custom.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/screenshot1.png -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/screenshot1.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/thumbnail.png -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/thumbnail.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/config.yaml -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/config.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_menu.css -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_menu.css
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/sympy_assumptions.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/sympy_assumptions.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/python.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/python.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/scipy.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/scipy.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/python_regex.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/python_regex.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/h5py.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/h5py.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/scipy_constants.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/scipy_constants.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/sympy.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/sympy.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/numba.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/numba.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/astropy.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/astropy.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/matplotlib.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/matplotlib.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/scipy_special.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/scipy_special.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/sympy_functions.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/sympy_functions.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/pandas.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/pandas.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/numpy_ufuncs.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/numpy_ufuncs.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/numpy.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/numpy.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/snippets_menu/snippets_submenus_python/numpy_polynomial.js -> /opt/tljh/user/share/jupyter/nbextensions/snippets_menu/snippets_submenus_python/numpy_polynomial.js
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/equation-numbering -> equation-numbering
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/equation-numbering/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/equation-numbering/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/equation-numbering/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/equation-numbering/main.js -> /opt/tljh/user/share/jupyter/nbextensions/equation-numbering/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/equation-numbering/button.png -> /opt/tljh/user/share/jupyter/nbextensions/equation-numbering/button.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/equation-numbering/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/equation-numbering/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/equation-numbering/info.yaml -> /opt/tljh/user/share/jupyter/nbextensions/equation-numbering/info.yaml
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/notify -> notify
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/notify/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/notify/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/notify/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/notify/notify.yaml -> /opt/tljh/user/share/jupyter/nbextensions/notify/notify.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/notify/notify.js -> /opt/tljh/user/share/jupyter/nbextensions/notify/notify.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/notify/notification.png -> /opt/tljh/user/share/jupyter/nbextensions/notify/notification.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/notify/notify.mp3 -> /opt/tljh/user/share/jupyter/nbextensions/notify/notify.mp3
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/cell_filter -> cell_filter
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/cell_filter/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/cell_filter/cell_filter.js -> /opt/tljh/user/share/jupyter/nbextensions/cell_filter/cell_filter.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/cell_filter/cell_filter.yml -> /opt/tljh/user/share/jupyter/nbextensions/cell_filter/cell_filter.yml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/cell_filter/README.md -> /opt/tljh/user/share/jupyter/nbextensions/cell_filter/README.md
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toc2 -> toc2
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/toc2/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toc2/demo.gif -> /opt/tljh/user/share/jupyter/nbextensions/toc2/demo.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toc2/main.js -> /opt/tljh/user/share/jupyter/nbextensions/toc2/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toc2/toc2.js -> /opt/tljh/user/share/jupyter/nbextensions/toc2/toc2.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toc2/demo3.gif -> /opt/tljh/user/share/jupyter/nbextensions/toc2/demo3.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toc2/toc2.yaml -> /opt/tljh/user/share/jupyter/nbextensions/toc2/toc2.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toc2/main.css -> /opt/tljh/user/share/jupyter/nbextensions/toc2/main.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toc2/demo_dark.png -> /opt/tljh/user/share/jupyter/nbextensions/toc2/demo_dark.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toc2/demo2.gif -> /opt/tljh/user/share/jupyter/nbextensions/toc2/demo2.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toc2/image.png -> /opt/tljh/user/share/jupyter/nbextensions/toc2/image.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toc2/README.md -> /opt/tljh/user/share/jupyter/nbextensions/toc2/README.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/toc2/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/toc2/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/nbTranslate -> nbTranslate
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/nbTranslate/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/nbTranslate/languages.js -> /opt/tljh/user/share/jupyter/nbextensions/nbTranslate/languages.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/nbTranslate/main.js -> /opt/tljh/user/share/jupyter/nbextensions/nbTranslate/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/nbTranslate/demo1.gif -> /opt/tljh/user/share/jupyter/nbextensions/nbTranslate/demo1.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/nbTranslate/mutils.js -> /opt/tljh/user/share/jupyter/nbextensions/nbTranslate/mutils.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/nbTranslate/nbTranslate.js -> /opt/tljh/user/share/jupyter/nbextensions/nbTranslate/nbTranslate.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/nbTranslate/demo2.gif -> /opt/tljh/user/share/jupyter/nbextensions/nbTranslate/demo2.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/nbTranslate/nbTranslate.yaml -> /opt/tljh/user/share/jupyter/nbextensions/nbTranslate/nbTranslate.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/nbTranslate/README.md -> /opt/tljh/user/share/jupyter/nbextensions/nbTranslate/README.md
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/navigation-hotkeys -> navigation-hotkeys
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/navigation-hotkeys/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/navigation-hotkeys/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/navigation-hotkeys/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/navigation-hotkeys/hotkeys.yaml -> /opt/tljh/user/share/jupyter/nbextensions/navigation-hotkeys/hotkeys.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/navigation-hotkeys/main.js -> /opt/tljh/user/share/jupyter/nbextensions/navigation-hotkeys/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/navigation-hotkeys/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/navigation-hotkeys/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/spellchecker -> spellchecker
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/spellchecker/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/spellchecker/main.js -> /opt/tljh/user/share/jupyter/nbextensions/spellchecker/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/spellchecker/main.css -> /opt/tljh/user/share/jupyter/nbextensions/spellchecker/main.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/spellchecker/screenshot.png -> /opt/tljh/user/share/jupyter/nbextensions/spellchecker/screenshot.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/spellchecker/download_new_dict.py -> /opt/tljh/user/share/jupyter/nbextensions/spellchecker/download_new_dict.py
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/spellchecker/README.md -> /opt/tljh/user/share/jupyter/nbextensions/spellchecker/README.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/spellchecker/config.yaml -> /opt/tljh/user/share/jupyter/nbextensions/spellchecker/config.yaml
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/spellchecker/__pycache__
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/spellchecker/__pycache__/download_new_dict.cpython-36.pyc -> /opt/tljh/user/share/jupyter/nbextensions/spellchecker/__pycache__/download_new_dict.cpython-36.pyc
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/spellchecker/typo
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/spellchecker/typo/typo.js -> /opt/tljh/user/share/jupyter/nbextensions/spellchecker/typo/typo.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/spellchecker/typo/LICENSE.txt -> /opt/tljh/user/share/jupyter/nbextensions/spellchecker/typo/LICENSE.txt
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/help_panel -> help_panel
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/help_panel/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/help_panel/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/help_panel/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/help_panel/help_panel.js -> /opt/tljh/user/share/jupyter/nbextensions/help_panel/help_panel.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/help_panel/help_panel_ext.png -> /opt/tljh/user/share/jupyter/nbextensions/help_panel/help_panel_ext.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/help_panel/help_panel.yaml -> /opt/tljh/user/share/jupyter/nbextensions/help_panel/help_panel.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/help_panel/help_panel_ext_fullscreen.png -> /opt/tljh/user/share/jupyter/nbextensions/help_panel/help_panel_ext_fullscreen.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/help_panel/help_panel.css -> /opt/tljh/user/share/jupyter/nbextensions/help_panel/help_panel.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/help_panel/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/help_panel/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/help_panel/img
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/help_panel/img/handle-v.png -> /opt/tljh/user/share/jupyter/nbextensions/help_panel/img/handle-v.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/execution_dependencies -> execution_dependencies
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/execution_dependencies/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/execution_dependencies/execution_dependencies.yml -> /opt/tljh/user/share/jupyter/nbextensions/execution_dependencies/execution_dependencies.yml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/execution_dependencies/execution_dependencies.js -> /opt/tljh/user/share/jupyter/nbextensions/execution_dependencies/execution_dependencies.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/execution_dependencies/README.md -> /opt/tljh/user/share/jupyter/nbextensions/execution_dependencies/README.md
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/rubberband -> rubberband
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/rubberband/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/rubberband/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/rubberband/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/rubberband/rubberband.yaml -> /opt/tljh/user/share/jupyter/nbextensions/rubberband/rubberband.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/rubberband/main.js -> /opt/tljh/user/share/jupyter/nbextensions/rubberband/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/rubberband/main.css -> /opt/tljh/user/share/jupyter/nbextensions/rubberband/main.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/rubberband/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/rubberband/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/scratchpad -> scratchpad
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/scratchpad/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/scratchpad/scratchpad.css -> /opt/tljh/user/share/jupyter/nbextensions/scratchpad/scratchpad.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/scratchpad/scratchpad.yaml -> /opt/tljh/user/share/jupyter/nbextensions/scratchpad/scratchpad.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/scratchpad/demo.gif -> /opt/tljh/user/share/jupyter/nbextensions/scratchpad/demo.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/scratchpad/main.js -> /opt/tljh/user/share/jupyter/nbextensions/scratchpad/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/scratchpad/README.md -> /opt/tljh/user/share/jupyter/nbextensions/scratchpad/README.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/scratchpad/LICENSE -> /opt/tljh/user/share/jupyter/nbextensions/scratchpad/LICENSE
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/qtconsole -> qtconsole
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/qtconsole/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/qtconsole/qtconsole.yaml -> /opt/tljh/user/share/jupyter/nbextensions/qtconsole/qtconsole.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/qtconsole/qtconsole.js -> /opt/tljh/user/share/jupyter/nbextensions/qtconsole/qtconsole.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/qtconsole/README.md -> /opt/tljh/user/share/jupyter/nbextensions/qtconsole/README.md
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/ruler -> ruler
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/ruler/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/ruler/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/ruler/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/ruler/main.js -> /opt/tljh/user/share/jupyter/nbextensions/ruler/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/ruler/edit.js -> /opt/tljh/user/share/jupyter/nbextensions/ruler/edit.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/ruler/ruler_editor.yaml -> /opt/tljh/user/share/jupyter/nbextensions/ruler/ruler_editor.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/ruler/ruler.yaml -> /opt/tljh/user/share/jupyter/nbextensions/ruler/ruler.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/ruler/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/ruler/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/ruler -> ruler
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/ruler/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/ruler/main.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/ruler/edit.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/ruler/ruler_editor.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/ruler/ruler.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/ruler/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/zenmode -> zenmode
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/zenmode/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/zenmode/zenmode.yaml -> /opt/tljh/user/share/jupyter/nbextensions/zenmode/zenmode.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/zenmode/main.js -> /opt/tljh/user/share/jupyter/nbextensions/zenmode/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/zenmode/main.css -> /opt/tljh/user/share/jupyter/nbextensions/zenmode/main.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/zenmode/README.md -> /opt/tljh/user/share/jupyter/nbextensions/zenmode/README.md
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/zenmode/images
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/zenmode/images/back22.jpg -> /opt/tljh/user/share/jupyter/nbextensions/zenmode/images/back22.jpg
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/zenmode/images/back2.jpg -> /opt/tljh/user/share/jupyter/nbextensions/zenmode/images/back2.jpg
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/zenmode/images/back21.jpg -> /opt/tljh/user/share/jupyter/nbextensions/zenmode/images/back21.jpg
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/zenmode/images/back11.jpg -> /opt/tljh/user/share/jupyter/nbextensions/zenmode/images/back11.jpg
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/zenmode/images/ipynblogo0.png -> /opt/tljh/user/share/jupyter/nbextensions/zenmode/images/ipynblogo0.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/zenmode/images/ipynblogo1.png -> /opt/tljh/user/share/jupyter/nbextensions/zenmode/images/ipynblogo1.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/zenmode/images/back1.jpg -> /opt/tljh/user/share/jupyter/nbextensions/zenmode/images/back1.jpg
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/zenmode/images/back3.jpg -> /opt/tljh/user/share/jupyter/nbextensions/zenmode/images/back3.jpg
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/zenmode/images/back12.jpg -> /opt/tljh/user/share/jupyter/nbextensions/zenmode/images/back12.jpg
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_input_all -> hide_input_all
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/hide_input_all/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_input_all/hide_input_all.yaml -> /opt/tljh/user/share/jupyter/nbextensions/hide_input_all/hide_input_all.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_input_all/hide_input_all_show.png -> /opt/tljh/user/share/jupyter/nbextensions/hide_input_all/hide_input_all_show.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_input_all/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/hide_input_all/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_input_all/main.js -> /opt/tljh/user/share/jupyter/nbextensions/hide_input_all/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_input_all/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/hide_input_all/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_input_all/hide_input_all_hide.png -> /opt/tljh/user/share/jupyter/nbextensions/hide_input_all/hide_input_all_hide.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/exercise2 -> exercise2
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/exercise2/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/exercise2/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/exercise2/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/exercise2/image.gif -> /opt/tljh/user/share/jupyter/nbextensions/exercise2/image.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/exercise2/main.js -> /opt/tljh/user/share/jupyter/nbextensions/exercise2/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/exercise2/exercise2.yaml -> /opt/tljh/user/share/jupyter/nbextensions/exercise2/exercise2.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/exercise2/main.css -> /opt/tljh/user/share/jupyter/nbextensions/exercise2/main.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/exercise2/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/exercise2/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/collapsible_headings -> collapsible_headings
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/collapsible_headings/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/collapsible_headings/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/collapsible_headings/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/collapsible_headings/main.js -> /opt/tljh/user/share/jupyter/nbextensions/collapsible_headings/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/collapsible_headings/main.css -> /opt/tljh/user/share/jupyter/nbextensions/collapsible_headings/main.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/collapsible_headings/screenshot.png -> /opt/tljh/user/share/jupyter/nbextensions/collapsible_headings/screenshot.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/collapsible_headings/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/collapsible_headings/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/collapsible_headings/collapsible_headings.yaml -> /opt/tljh/user/share/jupyter/nbextensions/collapsible_headings/collapsible_headings.yaml
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/contrib_nbextensions_help_item -> contrib_nbextensions_help_item
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/contrib_nbextensions_help_item/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/contrib_nbextensions_help_item/contrib_nbextensions_help_item.yaml -> /opt/tljh/user/share/jupyter/nbextensions/contrib_nbextensions_help_item/contrib_nbextensions_help_item.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/contrib_nbextensions_help_item/main.js -> /opt/tljh/user/share/jupyter/nbextensions/contrib_nbextensions_help_item/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/contrib_nbextensions_help_item/README.md -> /opt/tljh/user/share/jupyter/nbextensions/contrib_nbextensions_help_item/README.md
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hinterland -> hinterland
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/hinterland/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hinterland/hinterland.yaml -> /opt/tljh/user/share/jupyter/nbextensions/hinterland/hinterland.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hinterland/hinterland.js -> /opt/tljh/user/share/jupyter/nbextensions/hinterland/hinterland.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hinterland/README.md -> /opt/tljh/user/share/jupyter/nbextensions/hinterland/README.md
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/execute_time -> execute_time
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/execute_time/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/execute_time/execution-timings-box.png -> /opt/tljh/user/share/jupyter/nbextensions/execute_time/execution-timings-box.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/execute_time/execution-timings-menu.png -> /opt/tljh/user/share/jupyter/nbextensions/execute_time/execution-timings-menu.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/execute_time/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/execute_time/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/execute_time/ExecuteTime.js -> /opt/tljh/user/share/jupyter/nbextensions/execute_time/ExecuteTime.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/execute_time/ExecuteTime.yaml -> /opt/tljh/user/share/jupyter/nbextensions/execute_time/ExecuteTime.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/execute_time/ExecuteTime.css -> /opt/tljh/user/share/jupyter/nbextensions/execute_time/ExecuteTime.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/execute_time/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/execute_time/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/addbefore -> addbefore
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/addbefore/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/addbefore/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/addbefore/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/addbefore/main.js -> /opt/tljh/user/share/jupyter/nbextensions/addbefore/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/addbefore/addbefore.yaml -> /opt/tljh/user/share/jupyter/nbextensions/addbefore/addbefore.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/addbefore/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/addbefore/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/tree-filter -> tree-filter
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/tree-filter/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/tree-filter/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/tree-filter/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/tree-filter/demo.gif -> /opt/tljh/user/share/jupyter/nbextensions/tree-filter/demo.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/tree-filter/index.js -> /opt/tljh/user/share/jupyter/nbextensions/tree-filter/index.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/tree-filter/tree-filter.yaml -> /opt/tljh/user/share/jupyter/nbextensions/tree-filter/tree-filter.yaml
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/skill -> skill
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/skill/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/skill/skill.js -> /opt/tljh/user/share/jupyter/nbextensions/skill/skill.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/skill/main.js -> /opt/tljh/user/share/jupyter/nbextensions/skill/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/skill/skill.yaml -> /opt/tljh/user/share/jupyter/nbextensions/skill/skill.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/skill/README.md -> /opt/tljh/user/share/jupyter/nbextensions/skill/README.md
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_header -> hide_header
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/hide_header/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_header/hide_header.yaml -> /opt/tljh/user/share/jupyter/nbextensions/hide_header/hide_header.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_header/main.js -> /opt/tljh/user/share/jupyter/nbextensions/hide_header/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/hide_header/README.md -> /opt/tljh/user/share/jupyter/nbextensions/hide_header/README.md
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/exercise -> exercise
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/exercise/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/exercise/history.md -> /opt/tljh/user/share/jupyter/nbextensions/exercise/history.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/exercise/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/exercise/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/exercise/image.gif -> /opt/tljh/user/share/jupyter/nbextensions/exercise/image.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/exercise/main.js -> /opt/tljh/user/share/jupyter/nbextensions/exercise/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/exercise/exercise.yaml -> /opt/tljh/user/share/jupyter/nbextensions/exercise/exercise.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/exercise/main.css -> /opt/tljh/user/share/jupyter/nbextensions/exercise/main.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/exercise/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/exercise/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/datestamper -> datestamper
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/datestamper/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/datestamper/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/datestamper/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/datestamper/main.js -> /opt/tljh/user/share/jupyter/nbextensions/datestamper/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/datestamper/main.yaml -> /opt/tljh/user/share/jupyter/nbextensions/datestamper/main.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/datestamper/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/datestamper/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/printview -> printview
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/printview/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/printview/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/printview/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/printview/main.js -> /opt/tljh/user/share/jupyter/nbextensions/printview/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/printview/printview.yaml -> /opt/tljh/user/share/jupyter/nbextensions/printview/printview.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/printview/printview-button.png -> /opt/tljh/user/share/jupyter/nbextensions/printview/printview-button.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/printview/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/printview/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/splitcell -> splitcell
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/splitcell/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/splitcell/splitcell.yaml -> /opt/tljh/user/share/jupyter/nbextensions/splitcell/splitcell.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/splitcell/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/splitcell/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/splitcell/splitcell.js -> /opt/tljh/user/share/jupyter/nbextensions/splitcell/splitcell.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/splitcell/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/splitcell/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter -> highlighter
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/highlighter/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/demo_highlighter.ipynb -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/demo_highlighter.ipynb
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/tst_highlights.tex -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/tst_highlights.tex
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/export_highlights.pdf -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/export_highlights.pdf
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/highlighter.yaml -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/highlighter.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/export_highlights.ipynb -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/export_highlights.ipynb
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/highlighter.css -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/highlighter.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/image.gif -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/image.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/export_highlights.html -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/export_highlights.html
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/export_highlights.tex -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/export_highlights.tex
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/demo_highlighter.html -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/demo_highlighter.html
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/tst_highlights.ipynb -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/tst_highlights.ipynb
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/tst_highlights.pdf -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/tst_highlights.pdf
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/tst_highlights.html -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/tst_highlights.html
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/highlighter/highlighter.js -> /opt/tljh/user/share/jupyter/nbextensions/highlighter/highlighter.js
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/autosavetime -> autosavetime
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/autosavetime/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/autosavetime/main.js -> /opt/tljh/user/share/jupyter/nbextensions/autosavetime/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/autosavetime/autosavetime.yaml -> /opt/tljh/user/share/jupyter/nbextensions/autosavetime/autosavetime.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/autosavetime/README.md -> /opt/tljh/user/share/jupyter/nbextensions/autosavetime/README.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/autosavetime/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/autosavetime/icon.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/load_tex_macros -> load_tex_macros
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/load_tex_macros/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/load_tex_macros/readme.md -> /opt/tljh/user/share/jupyter/nbextensions/load_tex_macros/readme.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/load_tex_macros/main.js -> /opt/tljh/user/share/jupyter/nbextensions/load_tex_macros/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/load_tex_macros/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/load_tex_macros/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/load_tex_macros/load_tex_macros.yaml -> /opt/tljh/user/share/jupyter/nbextensions/load_tex_macros/load_tex_macros.yaml
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify -> code_prettify
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/README_autopep8.md -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_autopep8.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/kernel_exec_on_cell.js -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/kernel_exec_on_cell.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/code_prettify.yaml -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/code_prettify.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/isort.yaml -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/isort.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/README_code_prettify.md -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_code_prettify.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/isort.js -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/isort.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/autopep8.js -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/autopep8.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/demo_2to3.gif -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo_2to3.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/2to3.js -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/2to3.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/demo-R.gif -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo-R.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/autopep8.yaml -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/autopep8.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/demo-py.gif -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo-py.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/2to3.yaml -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/2to3.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/README_2to3.md -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_2to3.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/demo-jv.gif -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo-jv.gif
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/README.md -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/README_isort.md -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_isort.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify/code_prettify.js -> /opt/tljh/user/share/jupyter/nbextensions/code_prettify/code_prettify.js
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify -> code_prettify
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_autopep8.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/kernel_exec_on_cell.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/code_prettify.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/isort.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_code_prettify.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/isort.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/autopep8.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo_2to3.gif
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/2to3.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo-R.gif
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/autopep8.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo-py.gif
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/2to3.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_2to3.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo-jv.gif
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_isort.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/code_prettify.js
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify -> code_prettify
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_autopep8.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/kernel_exec_on_cell.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/code_prettify.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/isort.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_code_prettify.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/isort.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/autopep8.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo_2to3.gif
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/2to3.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo-R.gif
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/autopep8.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo-py.gif
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/2to3.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_2to3.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo-jv.gif
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_isort.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/code_prettify.js
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_contrib_nbextensions/nbextensions/code_prettify -> code_prettify
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_autopep8.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/kernel_exec_on_cell.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/code_prettify.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/isort.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_code_prettify.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/isort.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/autopep8.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo_2to3.gif
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/2to3.js
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo-R.gif
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/autopep8.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo-py.gif
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/2to3.yaml
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_2to3.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/demo-jv.gif
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/README_isort.md
[I 16:02:14 InstallContribNbextensionsApp] Up to date: /opt/tljh/user/share/jupyter/nbextensions/code_prettify/code_prettify.js
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_highlight_selected_word/static/highlight_selected_word -> highlight_selected_word
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/highlight_selected_word/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_highlight_selected_word/static/highlight_selected_word/main.js -> /opt/tljh/user/share/jupyter/nbextensions/highlight_selected_word/main.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_highlight_selected_word/static/highlight_selected_word/configurator.yaml -> /opt/tljh/user/share/jupyter/nbextensions/highlight_selected_word/configurator.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_highlight_selected_word/static/highlight_selected_word/README.md -> /opt/tljh/user/share/jupyter/nbextensions/highlight_selected_word/README.md
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static -> latex_envs
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/latex_envs/
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/envsLatex.json -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/envsLatex.json
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/configuration_toolbar.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/configuration_toolbar.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/example_user_envs.json -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/example_user_envs.json
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/envsLatex.js -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/envsLatex.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/latex_envs.js -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/latex_envs.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/bibInNb4.js -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/bibInNb4.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/bibtex2.js -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/bibtex2.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/initNb.js -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/initNb.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/main_toolbar.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/main_toolbar.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/latex_envs.css -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/latex_envs.css
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/thmsInNb4.js -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/thmsInNb4.js
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/README.md -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/README.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/icon.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/icon.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/latex_envs.yaml -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/latex_envs.yaml
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/example.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/example.png
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/configuration_toolbar.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/configuration_toolbar.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc.ipynb -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc.ipynb
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/Toggles.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/Toggles.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc.tex -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc.tex
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/header.tex -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/header.tex
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/biblio_ipython.bib -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/biblio_ipython.bib
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/main_toolbar.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/main_toolbar.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/documentation.tex -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/documentation.tex
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/config_toolbar.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/config_toolbar.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/README.md -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/README.md
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/example.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/example.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/LaTeX_envs_menu.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/LaTeX_envs_menu.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/IEEEtran.bst -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/IEEEtran.bst
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/documentation.pdf -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/documentation.pdf
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc.html -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc.html
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/.ipynb_checkpoints
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/.ipynb_checkpoints/latex_env_doc-checkpoint.ipynb -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/.ipynb_checkpoints/latex_env_doc-checkpoint.ipynb
[I 16:02:14 InstallContribNbextensionsApp] Making directory: /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_23_2.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_23_2.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_49_0.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_49_0.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_41_0.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_41_0.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_24_2.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_24_2.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_47_0.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_47_0.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_45_0.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_45_0.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_43_0.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_43_0.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_42_0.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_42_0.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_50_0.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_50_0.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_48_0.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_48_0.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_51_0.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_51_0.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_27_2.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_27_2.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_52_0.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_52_0.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_46_0.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_46_0.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_44_0.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_44_0.png
[I 16:02:14 InstallContribNbextensionsApp] Copying: /opt/tljh/user/lib/python3.6/site-packages/latex_envs/static/doc/latex_env_doc_files/latex_env_doc_26_2.png -> /opt/tljh/user/share/jupyter/nbextensions/latex_envs/doc/latex_env_doc_files/latex_env_doc_26_2.png
[I 16:02:14 InstallContribNbextensionsApp] - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] Installing jupyter_contrib_nbextensions items to config in /opt/tljh/user/etc/jupyter
Enabling: jupyter_nbextensions_configurator
- Writing config: /opt/tljh/user/etc/jupyter
    - Validating...
      jupyter_nbextensions_configurator 0.4.1 OK
Enabling notebook nbextension nbextensions_configurator/config_menu/main...
Enabling tree nbextension nbextensions_configurator/tree_tab/main...
[I 16:02:14 InstallContribNbextensionsApp] Enabling notebook extension contrib_nbextensions_help_item/main...
[I 16:02:14 InstallContribNbextensionsApp]       - Validating: OK
[I 16:02:14 InstallContribNbextensionsApp] - Editing config: /opt/tljh/user/etc/jupyter/jupyter_nbconvert_config.json
[I 16:02:14 InstallContribNbextensionsApp] --  Configuring nbconvert template path
[I 16:02:14 InstallContribNbextensionsApp] --  Configuring nbconvert preprocessors
[I 16:02:14 InstallContribNbextensionsApp] - Writing config: /opt/tljh/user/etc/jupyter/jupyter_nbconvert_config.json
[I 16:02:14 InstallContribNbextensionsApp] --  Writing updated config file /opt/tljh/user/etc/jupyter/jupyter_nbconvert_config.json
In [ ]:
!jupyter nbextension list
Known nbextensions:
  config dir: /opt/tljh/user/etc/jupyter/nbconfig
    notebook section
      nbresuse/main  enabled 
      - Validating: OK
      voila/extension  enabled 
      - Validating: OK
      jupyter-js-widgets/extension  enabled 
      - Validating: OK
      appmode/main  enabled 
      - Validating: OK
      jupyter_dashboards/notebook/main  enabled 
      - Validating: OK
      nbextensions_configurator/config_menu/main  enabled 
      - Validating: problems found:
        - require?  X nbextensions_configurator/config_menu/main
      contrib_nbextensions_help_item/main  enabled 
      - Validating: OK
    tree section
      nbextensions_configurator/tree_tab/main  enabled 
      - Validating: problems found:
        - require?  X nbextensions_configurator/tree_tab/main
In [ ]:
!sudo -E pip install -U jupyter_nbextensions_configurator
In [ ]:
!sudo -E jupyter nbextensions_configurator enable --sys-prefix
Enabling: jupyter_nbextensions_configurator
- Writing config: /opt/tljh/user/etc/jupyter
    - Validating...
      jupyter_nbextensions_configurator 0.4.1 OK
Enabling notebook nbextension nbextensions_configurator/config_menu/main...
Enabling tree nbextension nbextensions_configurator/tree_tab/main...
In [ ]:
!sudo -E jupyter nbextensions_configurator enable --user
Enabling: jupyter_nbextensions_configurator
- Writing config: /home/jupyter-sheng_wei/.jupyter
    - Validating...
      jupyter_nbextensions_configurator 0.4.1 OK
Enabling notebook nbextension nbextensions_configurator/config_menu/main...
Enabling tree nbextension nbextensions_configurator/tree_tab/main...
In [ ]:
!jupyter nbextension list
Known nbextensions:
  config dir: /home/jupyter-sheng_wei/.jupyter/nbconfig
    notebook section
      nbextensions_configurator/config_menu/main  enabled 
      - Validating: problems found:
        - require?  X nbextensions_configurator/config_menu/main
      freeze/main  enabled 
      - Validating: OK
    tree section
      nbextensions_configurator/tree_tab/main  enabled 
      - Validating: problems found:
        - require?  X nbextensions_configurator/tree_tab/main
  config dir: /opt/tljh/user/etc/jupyter/nbconfig
    notebook section
      nbresuse/main  enabled 
      - Validating: OK
      voila/extension  enabled 
      - Validating: OK
      jupyter-js-widgets/extension  enabled 
      - Validating: OK
      appmode/main  enabled 
      - Validating: OK
      nbextensions_configurator/config_menu/main  enabled 
      - Validating: problems found:
        - require?  X nbextensions_configurator/config_menu/main
      contrib_nbextensions_help_item/main  enabled 
      - Validating: OK
    tree section
      nbextensions_configurator/tree_tab/main  enabled 
      - Validating: problems found:
        - require?  X nbextensions_configurator/tree_tab/main
In [ ]:
!sudo -E jupyter serverextension enable --py jupyter_nbextensions_configurator
Enabling: jupyter_nbextensions_configurator
- Writing config: /home/jupyter-sheng_wei/.jupyter
    - Validating...
      jupyter_nbextensions_configurator 0.4.1 OK
In [ ]:
!sudo -E jupyter nbextension install --py jupyter_nbextensions_configurator
Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator -> nbextensions_configurator
Making directory: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/readme.md -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/readme.md
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/main.js -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/main.js
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/quickhelp_shim.js -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/quickhelp_shim.js
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/kse_components.js -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/kse_components.js
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/main.css -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/main.css
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/icon.png -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/icon.png
Making directory: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/tree_tab
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/tree_tab/readme.md -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/tree_tab/readme.md
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/tree_tab/main.js -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/tree_tab/main.js
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/tree_tab/tree_tab.yaml -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/tree_tab/tree_tab.yaml
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/tree_tab/icon.png -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/tree_tab/icon.png
Making directory: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/render
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/render/rendermd.css -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/render/rendermd.css
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/render/render.js -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/render/render.js
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/render/video_play.svg -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/render/video_play.svg
Making directory: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/config_menu
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/config_menu/main.js -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/config_menu/main.js
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/config_menu/config_menu.yaml -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/config_menu/config_menu.yaml
Copying: /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator/config_menu/icon.png -> /usr/local/share/jupyter/nbextensions/nbextensions_configurator/config_menu/icon.png
- Validating: OK
Installing /opt/tljh/user/lib/python3.6/site-packages/jupyter_nbextensions_configurator/static/nbextensions_configurator -> nbextensions_configurator
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/readme.md
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/main.js
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/quickhelp_shim.js
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/kse_components.js
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/main.css
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/icon.png
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/tree_tab/readme.md
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/tree_tab/main.js
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/tree_tab/tree_tab.yaml
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/tree_tab/icon.png
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/render/rendermd.css
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/render/render.js
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/render/video_play.svg
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/config_menu/main.js
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/config_menu/config_menu.yaml
Up to date: /usr/local/share/jupyter/nbextensions/nbextensions_configurator/config_menu/icon.png
- Validating: OK

    To initialize this nbextension in the browser every time the notebook (or other app) loads:
    
          jupyter nbextension enable jupyter_nbextensions_configurator --py
    
In [ ]:
!sudo -E jupyter nbextension enable --py jupyter_nbextensions_configurator
Enabling notebook extension nbextensions_configurator/config_menu/main...
      - Validating: OK
Enabling tree extension nbextensions_configurator/tree_tab/main...
      - Validating: OK
In [ ]:
!jupyter nbextension list
Known nbextensions:
  config dir: /home/jupyter-sheng_wei/.jupyter/nbconfig
    notebook section
      nbextensions_configurator/config_menu/main  enabled 
      - Validating: OK
      freeze/main  enabled 
      - Validating: OK
    tree section
      nbextensions_configurator/tree_tab/main  enabled 
      - Validating: OK
  config dir: /opt/tljh/user/etc/jupyter/nbconfig
    notebook section
      nbresuse/main  enabled 
      - Validating: OK
      voila/extension  enabled 
      - Validating: OK
      jupyter-js-widgets/extension  enabled 
      - Validating: OK
      appmode/main  enabled 
      - Validating: OK
      nbextensions_configurator/config_menu/main  enabled 
      - Validating: OK
      contrib_nbextensions_help_item/main  enabled 
      - Validating: OK
    tree section
      nbextensions_configurator/tree_tab/main  enabled 
      - Validating: OK
In [ ]:
!sudo -E jupyter nbextension enable --sys-prefix freeze/main
Enabling notebook extension freeze/main...
      - Validating: OK
In [ ]:
!jupyter nbextension list
Known nbextensions:
  config dir: /home/jupyter-sheng_wei/.jupyter/nbconfig
    notebook section
      nbextensions_configurator/config_menu/main  enabled 
      - Validating: OK
      freeze/main  enabled 
      - Validating: OK
    tree section
      nbextensions_configurator/tree_tab/main  enabled 
      - Validating: OK
  config dir: /opt/tljh/user/etc/jupyter/nbconfig
    notebook section
      nbresuse/main  enabled 
      - Validating: OK
      voila/extension  enabled 
      - Validating: OK
      jupyter-js-widgets/extension  enabled 
      - Validating: OK
      appmode/main  enabled 
      - Validating: OK
      nbextensions_configurator/config_menu/main  enabled 
      - Validating: OK
      contrib_nbextensions_help_item/main  enabled 
      - Validating: OK
      freeze/main  enabled 
      - Validating: OK
    tree section
      nbextensions_configurator/tree_tab/main  enabled 
      - Validating: OK

Try Freeze

{
  "trusted": true,
  "editable": false,
  "deletable": false,
  "run_control": {
    "frozen": true
  }
}
Read More

2019-10-19
Learn BigQuery

In [ ]:
%%bash
pip install --upgrade 'google-cloud-bigquery[bqstorage,pandas]'
Collecting google-cloud-bigquery[bqstorage,pandas]
  Downloading google_cloud_bigquery-2.30.1-py2.py3-none-any.whl (203 kB)
Collecting proto-plus>=1.10.0
  Downloading proto_plus-1.19.8-py3-none-any.whl (45 kB)
Requirement already satisfied: packaging>=14.3 in /opt/conda/lib/python3.9/site-packages (from google-cloud-bigquery[bqstorage,pandas]) (21.2)
Requirement already satisfied: protobuf>=3.12.0 in /opt/conda/lib/python3.9/site-packages (from google-cloud-bigquery[bqstorage,pandas]) (3.18.1)
Collecting google-api-core[grpc]<3.0.0dev,>=1.29.0
  Downloading google_api_core-2.2.2-py2.py3-none-any.whl (95 kB)
Requirement already satisfied: python-dateutil<3.0dev,>=2.7.2 in /opt/conda/lib/python3.9/site-packages (from google-cloud-bigquery[bqstorage,pandas]) (2.8.2)
Collecting grpcio<2.0dev,>=1.38.1
  Downloading grpcio-1.42.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.0 MB)
Collecting google-resumable-media<3.0dev,>=0.6.0
  Downloading google_resumable_media-2.1.0-py2.py3-none-any.whl (75 kB)
Requirement already satisfied: requests<3.0.0dev,>=2.18.0 in /opt/conda/lib/python3.9/site-packages (from google-cloud-bigquery[bqstorage,pandas]) (2.26.0)
Collecting google-cloud-core<3.0.0dev,>=1.4.1
  Downloading google_cloud_core-2.2.1-py2.py3-none-any.whl (29 kB)
Requirement already satisfied: pyarrow<7.0dev,>=3.0.0 in /opt/conda/lib/python3.9/site-packages (from google-cloud-bigquery[bqstorage,pandas]) (6.0.0)
Collecting google-cloud-bigquery-storage<3.0.0dev,>=2.0.0
  Downloading google_cloud_bigquery_storage-2.10.1-py2.py3-none-any.whl (171 kB)
Requirement already satisfied: pandas>=0.24.2 in /opt/conda/lib/python3.9/site-packages (from google-cloud-bigquery[bqstorage,pandas]) (1.3.4)
Requirement already satisfied: setuptools>=40.3.0 in /opt/conda/lib/python3.9/site-packages (from google-api-core[grpc]<3.0.0dev,>=1.29.0->google-cloud-bigquery[bqstorage,pandas]) (59.1.1)
Collecting googleapis-common-protos<2.0dev,>=1.52.0
  Downloading googleapis_common_protos-1.53.0-py2.py3-none-any.whl (198 kB)
Collecting google-auth<3.0dev,>=1.25.0
  Downloading google_auth-2.3.3-py2.py3-none-any.whl (155 kB)
Collecting grpcio-status<2.0dev,>=1.33.2
  Downloading grpcio_status-1.42.0-py3-none-any.whl (10.0 kB)
Collecting libcst>=0.2.5
  Downloading libcst-0.3.23-py3-none-any.whl (517 kB)
Collecting google-crc32c<2.0dev,>=1.0
  Downloading google_crc32c-1.3.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (36 kB)
Requirement already satisfied: six>=1.5.2 in /opt/conda/lib/python3.9/site-packages (from grpcio<2.0dev,>=1.38.1->google-cloud-bigquery[bqstorage,pandas]) (1.16.0)
Requirement already satisfied: pyparsing<3,>=2.0.2 in /opt/conda/lib/python3.9/site-packages (from packaging>=14.3->google-cloud-bigquery[bqstorage,pandas]) (2.4.7)
Requirement already satisfied: pytz>=2017.3 in /opt/conda/lib/python3.9/site-packages (from pandas>=0.24.2->google-cloud-bigquery[bqstorage,pandas]) (2021.3)
Requirement already satisfied: numpy>=1.17.3 in /opt/conda/lib/python3.9/site-packages (from pandas>=0.24.2->google-cloud-bigquery[bqstorage,pandas]) (1.20.3)
Collecting protobuf>=3.12.0
  Downloading protobuf-3.19.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB)
Requirement already satisfied: certifi>=2017.4.17 in /opt/conda/lib/python3.9/site-packages (from requests<3.0.0dev,>=2.18.0->google-cloud-bigquery[bqstorage,pandas]) (2021.10.8)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /opt/conda/lib/python3.9/site-packages (from requests<3.0.0dev,>=2.18.0->google-cloud-bigquery[bqstorage,pandas]) (1.26.7)
Requirement already satisfied: charset-normalizer~=2.0.0 in /opt/conda/lib/python3.9/site-packages (from requests<3.0.0dev,>=2.18.0->google-cloud-bigquery[bqstorage,pandas]) (2.0.0)
Requirement already satisfied: idna<4,>=2.5 in /opt/conda/lib/python3.9/site-packages (from requests<3.0.0dev,>=2.18.0->google-cloud-bigquery[bqstorage,pandas]) (3.1)
Collecting rsa<5,>=3.1.4
  Downloading rsa-4.8-py3-none-any.whl (39 kB)
Collecting cachetools<5.0,>=2.0.0
  Downloading cachetools-4.2.4-py3-none-any.whl (10 kB)
Collecting pyasn1-modules>=0.2.1
  Downloading pyasn1_modules-0.2.8-py2.py3-none-any.whl (155 kB)
Collecting typing-inspect>=0.4.0
  Downloading typing_inspect-0.7.1-py3-none-any.whl (8.4 kB)
Requirement already satisfied: typing-extensions>=3.7.4.2 in /opt/conda/lib/python3.9/site-packages (from libcst>=0.2.5->google-cloud-bigquery-storage<3.0.0dev,>=2.0.0->google-cloud-bigquery[bqstorage,pandas]) (3.10.0.2)
Requirement already satisfied: pyyaml>=5.2 in /opt/conda/lib/python3.9/site-packages (from libcst>=0.2.5->google-cloud-bigquery-storage<3.0.0dev,>=2.0.0->google-cloud-bigquery[bqstorage,pandas]) (6.0)
Collecting pyasn1<0.5.0,>=0.4.6
  Downloading pyasn1-0.4.8-py2.py3-none-any.whl (77 kB)
Collecting mypy-extensions>=0.3.0
  Downloading mypy_extensions-0.4.3-py2.py3-none-any.whl (4.5 kB)
Installing collected packages: pyasn1, rsa, pyasn1-modules, protobuf, cachetools, mypy-extensions, grpcio, googleapis-common-protos, google-auth, typing-inspect, grpcio-status, google-crc32c, google-api-core, proto-plus, libcst, google-resumable-media, google-cloud-core, google-cloud-bigquery-storage, google-cloud-bigquery
  Attempting uninstall: protobuf
    Found existing installation: protobuf 3.18.1
    Uninstalling protobuf-3.18.1:
      Successfully uninstalled protobuf-3.18.1
Successfully installed cachetools-4.2.4 google-api-core-2.2.2 google-auth-2.3.3 google-cloud-bigquery-2.30.1 google-cloud-bigquery-storage-2.10.1 google-cloud-core-2.2.1 google-crc32c-1.3.0 google-resumable-media-2.1.0 googleapis-common-protos-1.53.0 grpcio-1.42.0 grpcio-status-1.42.0 libcst-0.3.23 mypy-extensions-0.4.3 proto-plus-1.19.8 protobuf-3.19.1 pyasn1-0.4.8 pyasn1-modules-0.2.8 rsa-4.8 typing-inspect-0.7.1
In [ ]:
%load_ext google.cloud.bigquery
In [ ]:
%%bigquery df_example
SELECT * FROM (
  SELECT
    [414016,
    5767168,
    89019964] AS phone_numbers
  UNION ALL
  SELECT
    [8708227,
    37637318] AS phone_numbers
  UNION ALL
  SELECT
    [9349460,
    84826376,
    9215080,
    26331650] AS phone_numbers)
In [ ]:
df_example.to_dict()
Out[ ]:
{'phone_numbers': {0: [414016, 5767168, 89019964],
  1: [8708227, 37637318],
  2: [9349460, 84826376, 9215080, 26331650]}}
In [ ]:
phone_number_strings_list = []
for phone_numbers in df_example['phone_numbers']:
  phone_number_strings = []
  for phone_number in phone_numbers:
    phone_number_string = f'{phone_number:08d}'
    phone_number_strings.append(f'(+81) {phone_number_string[:4]}-{phone_number_string[-4:]}')
  phone_number_strings_list.append(phone_number_strings)
df_example['phone_number_strings'] = phone_number_strings_list
del df_example['phone_numbers']
In [ ]:
df_example.to_dict()
Out[ ]:
{'phone_number_strings': {0: ['(+81) 0041-4016',
   '(+81) 0576-7168',
   '(+81) 8901-9964'],
  1: ['(+81) 0870-8227', '(+81) 3763-7318'],
  2: ['(+81) 0934-9460',
   '(+81) 8482-6376',
   '(+81) 0921-5080',
   '(+81) 2633-1650']}}
In [ ]:
!sudo -HE pip install pandas_gbq
Collecting pandas_gbq
  Downloading https://files.pythonhosted.org/packages/c0/cb/d82930a55728359eb40e42e487d83315b09cb2ba316f0e889f5d4b886614/pandas_gbq-0.14.1-py3-none-any.whl
Requirement already satisfied: google-auth in /opt/tljh/user/lib/python3.6/site-packages (from pandas_gbq) (1.6.3)
Requirement already satisfied: pandas>=0.20.1 in /opt/tljh/user/lib/python3.6/site-packages (from pandas_gbq) (0.25.1)
Collecting google-auth-oauthlib (from pandas_gbq)
  Downloading https://files.pythonhosted.org/packages/b1/0e/0636cc1448a7abc444fb1b3a63655e294e0d2d49092dc3de05241be6d43c/google_auth_oauthlib-0.4.6-py2.py3-none-any.whl
Collecting pydata-google-auth (from pandas_gbq)
  Downloading https://files.pythonhosted.org/packages/d8/61/e4e0bae8906f3d2f460bc46c1ccd4a94caf7eaf65aa92421c48d7c56ef70/pydata_google_auth-1.2.0-py2.py3-none-any.whl
Requirement already satisfied: google-cloud-bigquery[bqstorage,pandas]<3.0.0dev,>=1.11.1 in /opt/tljh/user/lib/python3.6/site-packages (from pandas_gbq) (1.21.0)
Requirement already satisfied: setuptools in /opt/tljh/user/lib/python3.6/site-packages (from pandas_gbq) (41.4.0)
Requirement already satisfied: rsa>=3.1.4 in /opt/tljh/user/lib/python3.6/site-packages (from google-auth->pandas_gbq) (4.0)
Requirement already satisfied: cachetools>=2.0.0 in /opt/tljh/user/lib/python3.6/site-packages (from google-auth->pandas_gbq) (3.1.1)
Requirement already satisfied: pyasn1-modules>=0.2.1 in /opt/tljh/user/lib/python3.6/site-packages (from google-auth->pandas_gbq) (0.2.6)
Requirement already satisfied: six>=1.9.0 in /opt/tljh/user/lib/python3.6/site-packages (from google-auth->pandas_gbq) (1.12.0)
Requirement already satisfied: python-dateutil>=2.6.1 in /opt/tljh/user/lib/python3.6/site-packages (from pandas>=0.20.1->pandas_gbq) (2.8.0)
Requirement already satisfied: pytz>=2017.2 in /opt/tljh/user/lib/python3.6/site-packages (from pandas>=0.20.1->pandas_gbq) (2019.2)
Requirement already satisfied: numpy>=1.13.3 in /opt/tljh/user/lib/python3.6/site-packages (from pandas>=0.20.1->pandas_gbq) (1.17.2)
Requirement already satisfied: requests-oauthlib>=0.7.0 in /opt/tljh/user/lib/python3.6/site-packages (from google-auth-oauthlib->pandas_gbq) (1.2.0)
Requirement already satisfied: google-cloud-core<2.0dev,>=1.0.3 in /opt/tljh/user/lib/python3.6/site-packages (from google-cloud-bigquery[bqstorage,pandas]<3.0.0dev,>=1.11.1->pandas_gbq) (1.0.3)
Requirement already satisfied: protobuf>=3.6.0 in /opt/tljh/user/lib/python3.6/site-packages (from google-cloud-bigquery[bqstorage,pandas]<3.0.0dev,>=1.11.1->pandas_gbq) (3.13.0)
Requirement already satisfied: google-resumable-media!=0.4.0,<0.5.0dev,>=0.3.1 in /opt/tljh/user/lib/python3.6/site-packages (from google-cloud-bigquery[bqstorage,pandas]<3.0.0dev,>=1.11.1->pandas_gbq) (0.4.1)
Collecting google-cloud-bigquery-storage<2.0.0dev,>=0.6.0; extra == "bqstorage" (from google-cloud-bigquery[bqstorage,pandas]<3.0.0dev,>=1.11.1->pandas_gbq)
  Downloading https://files.pythonhosted.org/packages/42/9a/003822d79a535472c089ca39fb384b74b8a3624f4d5a1715c4c52059418d/google_cloud_bigquery_storage-1.1.0-py2.py3-none-any.whl (135kB)
     |████████████████████████████████| 143kB 37.3MB/s eta 0:00:01
Collecting pyarrow!=0.14.0,>=0.13.0; extra == "bqstorage" (from google-cloud-bigquery[bqstorage,pandas]<3.0.0dev,>=1.11.1->pandas_gbq)
  Downloading https://files.pythonhosted.org/packages/5d/61/4160ed11e0c149182baafc3a5bed1fb04395ba40705556d03c9244fb57d4/pyarrow-6.0.0-cp36-cp36m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (24.3MB)
     |████████████████████████████████| 24.4MB 43.3MB/s eta 0:00:01
Requirement already satisfied: pyasn1>=0.1.3 in /opt/tljh/user/lib/python3.6/site-packages (from rsa>=3.1.4->google-auth->pandas_gbq) (0.4.7)
Requirement already satisfied: requests>=2.0.0 in /opt/tljh/user/lib/python3.6/site-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib->pandas_gbq) (2.25.1)
Requirement already satisfied: oauthlib>=3.0.0 in /opt/tljh/user/lib/python3.6/site-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib->pandas_gbq) (3.1.0)
Requirement already satisfied: google-api-core<2.0.0dev,>=1.14.0 in /opt/tljh/user/lib/python3.6/site-packages (from google-cloud-core<2.0dev,>=1.0.3->google-cloud-bigquery[bqstorage,pandas]<3.0.0dev,>=1.11.1->pandas_gbq) (1.14.2)
Requirement already satisfied: idna<3,>=2.5 in /opt/tljh/user/lib/python3.6/site-packages (from requests>=2.0.0->requests-oauthlib>=0.7.0->google-auth-oauthlib->pandas_gbq) (2.8)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /opt/tljh/user/lib/python3.6/site-packages (from requests>=2.0.0->requests-oauthlib>=0.7.0->google-auth-oauthlib->pandas_gbq) (1.24.3)
Requirement already satisfied: chardet<5,>=3.0.2 in /opt/tljh/user/lib/python3.6/site-packages (from requests>=2.0.0->requests-oauthlib>=0.7.0->google-auth-oauthlib->pandas_gbq) (3.0.4)
Requirement already satisfied: certifi>=2017.4.17 in /opt/tljh/user/lib/python3.6/site-packages (from requests>=2.0.0->requests-oauthlib>=0.7.0->google-auth-oauthlib->pandas_gbq) (2020.4.5.2)
Requirement already satisfied: googleapis-common-protos<2.0dev,>=1.6.0 in /opt/tljh/user/lib/python3.6/site-packages (from google-api-core<2.0.0dev,>=1.14.0->google-cloud-core<2.0dev,>=1.0.3->google-cloud-bigquery[bqstorage,pandas]<3.0.0dev,>=1.11.1->pandas_gbq) (1.6.0)
Installing collected packages: google-auth-oauthlib, pydata-google-auth, pandas-gbq, google-cloud-bigquery-storage, pyarrow
Successfully installed google-auth-oauthlib-0.4.6 google-cloud-bigquery-storage-1.1.0 pandas-gbq-0.14.1 pyarrow-6.0.0 pydata-google-auth-1.2.0
In [ ]:
df_example.to_gbq(project_id = 'sandbox-sheng', destination_table = 'bigquery_learning.customers', if_exists = 'replace')
/home/jupyter-sheng_wei/.local/lib/python3.6/site-packages/google/auth/_default.py:66: UserWarning: Your application has authenticated using end user credentials from Google Cloud SDK. We recommend that most server applications use service accounts instead. If your application continues to use end user credentials from Cloud SDK, you might receive a "quota exceeded" or "API not enabled" error. For more information about service accounts, see https://cloud.google.com/docs/authentication/
  warnings.warn(_CLOUD_SDK_CREDENTIALS_WARNING)
1it [00:04,  4.10s/it]
In [ ]:
%%bigquery
SELECT
  *
FROM
  `sandbox-sheng.bigquery_learning.customers`
Out[ ]:
phone_number_strings
0 ['(+81) 0041-4016', '(+81) 0576-7168', '(+81) ...
1 ['(+81) 0870-8227', '(+81) 3763-7318']
2 ['(+81) 0934-9460', '(+81) 8482-6376', '(+81) ...
In [ ]:
from datetime import datetime, timezone, timedelta
# from 30 days ago to 29 days ago
start_date = datetime.now(timezone(timedelta(hours=+9))) - timedelta(days=30)
end_date = datetime.now(timezone(timedelta(hours=+9))) - timedelta(days=29)
params = {
    'start_date': start_date.strftime('%Y-%m-%d %H:%M:%S Asia/Tokyo'),
    'end_date': end_date.strftime('%Y-%m-%d %H:%M:%S Asia/Tokyo')
}
In [ ]:
print(params['start_date'])
print(params['end_date'])
2021-10-14 09:21:28 Asia/Tokyo
2021-10-15 09:21:28 Asia/Tokyo
In [ ]:
%%time
%%bigquery df --param $params
SELECT
  *
FROM
  `sandbox-sheng.fluentd.fluentd_test`
WHERE
  time >= @start_date
  AND time < @end_date
ORDER BY
  time ASC
In [ ]:
df
In [ ]:
%%bigquery
SELECT
  ARRAY(
  SELECT
    CONCAT('(+81) ', SUBSTR(FORMAT('%08d', phone_number), 0, 4), '-', SUBSTR(FORMAT('%08d', phone_number), -4))
  FROM
    UNNEST(phone_numbers) AS phone_number )[OFFSET(0)] AS phone_number
FROM (
  SELECT
    [414016,
    5767168,
    89019964] AS phone_numbers
  UNION ALL
  SELECT
    [8708227,
    37637318] AS phone_numbers
  UNION ALL
  SELECT
    [9349460,
    84826376,
    9215080,
    26331650] AS phone_numbers)
Out[ ]:
phone_number
0 (+81) 0041-4016
1 (+81) 0870-8227
2 (+81) 0934-9460
In [ ]:
%%bigquery
WITH fruits AS
  (SELECT "apple" AS fruit
   UNION ALL SELECT "pear" AS fruit
   UNION ALL SELECT "banana" AS fruit)
SELECT ARRAY_AGG(fruit ORDER BY fruit) AS fruit_basket
FROM fruits
Out[ ]:
fruit_basket
0 [apple, banana, pear]
In [ ]:
%%bigquery
SELECT
  name,
  ARRAY_AGG( DISTINCT phone_number
  ORDER BY
    phone_number ASC )[OFFSET(0)] AS phone_number
FROM (
  SELECT
    'Andrew' AS name,
    414016 AS phone_number
  UNION ALL
  SELECT
    'Andrew' AS name,
    5767168 AS phone_number
  UNION ALL
  SELECT
    'Andrew' AS name,
    89019964 AS phone_number
  UNION ALL
  SELECT
    'Andrew' AS name,
    8708227 AS phone_number
  UNION ALL
  SELECT
    'Andrew' AS name,
    37637318 AS phone_number
  UNION ALL
  SELECT
    'Kelly' AS name,
    9349460 AS phone_number
  UNION ALL
  SELECT
    'Kelly' AS name,
    84826376 AS phone_number
  UNION ALL
  SELECT
    'Kelly' AS name,
    9215080 AS phone_number
  UNION ALL
  SELECT
    'Kelly' AS name,
    26331650 AS phone_number)
GROUP BY
  name
Out[ ]:
name phone_number
0 Andrew 414016
1 Kelly 9215080
Read More

2019-10-19
Try Jupyter Dashboards

I think it is a bit like appmode.

https://github.com/oschuett/appmode

In [ ]:
!sudo -E pip install jupyter_dashboards
!sudo -E jupyter dashboards quick-setup --sys-prefix
In [ ]:
!sudo -HE pip install -r ~/dashboards.git/requirements-demo.txt

Notebooks can not be well shown in Grid Layout with my Jupyter Dashboards.

In [ ]:
!sudo -E jupyter dashboards quick-remove --sys-prefix
Read More

2019-10-19
Try Commuter

In [ ]:
!sudo -E npm install @nteract/commuter -g
In [ ]:
!sudo -E npm install --build-from-source canvas@2.6.0 -g --unsafe-perm=true --allow-root --verbose

Turn to yarn

In [ ]:
%%bash
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

sudo apt-get update && sudo apt-get install --no-install-recommends yarn
In [ ]:
!sudo -E yarn global add @nteract/commuter

Check Install Result

In [ ]:
!cat /usr/local/share/.config/yarn/global/node_modules/@nteract/commuter/package.json

Concerning commuter

In [ ]:
!cat /usr/local/share/.config/yarn/global/node_modules/@nteract/commuter/package.json | grep -1 --color commuter
{
  "name": "@nteract/commuter",
  "version": "5.9.0",
--
  "bin": {
    "commuter": "bin.js"
  },
--
  },
  "homepage": "https://github.com/nteract/nteract/tree/master/applications/commuter#readme",
  "publishConfig": {

Concerning bin.js

In [ ]:
!cat /usr/local/share/.config/yarn/global/node_modules/@nteract/commuter/bin.js
#!/usr/bin/env node

process.env.NODE_ENV = "production";

require("./lib/index.js");

Concerning backend

In [ ]:
!cat /usr/local/share/.config/yarn/global/node_modules/@nteract/commuter/package.json | grep -1 --color backend
    "build:frontend-for-production": "next build",
    "build:server": "babel backend -d lib",
    "build:all": "npm run build:server && npm run build:frontend-for-production",
In [ ]:
!sed -n '6,17p' /usr/local/share/.config/yarn/global/node_modules/@nteract/commuter/package.json
  "scripts": {
    "predev": "npm run build:server",
    "dev": "NODE_ENV=development node lib/index.js",
    "prestart": "npm run build:all",
    "start": "NODE_ENV=production node lib/index.js",
    "build": "npm run build:all",
    "build:frontend-for-production": "next build",
    "build:server": "babel backend -d lib",
    "build:all": "npm run build:server && npm run build:frontend-for-production",
    "prepublishOnly": "npm run build:all",
    "test": "jest"
  },

Concerning index.js

In [ ]:
!cat /usr/local/share/.config/yarn/global/node_modules/@nteract/commuter/lib/index.js
"use strict";

var log = require("log");

var createServer = require("./server");

createServer().then(function (server) {
  var port = server.address().port;
  console.log(log);
  log.info("Commuter server listening on port " + port);
})["catch"](function (e) {
  console.error(e);
  console.error(e.stack);
  process.exit(-10);
});

Concerning port

In [ ]:
!cat /usr/local/share/.config/yarn/global/node_modules/@nteract/commuter/pages/discover.js | grep -w1 --color port
      // Server side, communicate with our local API
      const port = process.env.COMMUTER_PORT || 4000;
      BASE_PATH = `http://127.0.0.1:${port}/`;
    } else {

Run Commuter

In [ ]:
!commuter
Read More

2019-10-13
Try PaperBoby

In [ ]:
!cd ~ && git clone https://github.com/timkpaine/paperboy.git
Cloning into 'paperboy'...
remote: Enumerating objects: 21, done.
remote: Counting objects: 100% (21/21), done.
remote: Compressing objects: 100% (21/21), done.
remote: Total 3388 (delta 3), reused 3 (delta 0), pack-reused 3367
Receiving objects: 100% (3388/3388), 12.04 MiB | 22.38 MiB/s, done.
Resolving deltas: 100% (2277/2277), done.
In [ ]:
%%bash
cd ~/paperboy/
sudo -E npm install
sudo -E npm run build
sudo -E pip install -e .
In [ ]:
!sudo -E python -m paperboy
CRITICAL:root:Using SQL backend
CRITICAL:root:Using SQL auth
CRITICAL:root:Using dummy scheduler
[2019-10-13 18:36:29 +0900] [2696] [INFO] Starting gunicorn 19.9.0
[2019-10-13 18:36:29 +0900] [2696] [INFO] Listening at: http://0.0.0.0:8080 (2696)
[2019-10-13 18:36:29 +0900] [2696] [INFO] Using worker: sync
[2019-10-13 18:36:29 +0900] [2701] [INFO] Booting worker with pid: 2701
CRITICAL:root:Storing user sheng_wei eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6IjEiLCJuYW1lIjoic2hlbmdfd2VpIn0.oKJsYgZJaj1dLoVR8JgTjfPGp2O8bf3jqmoRux1bNgw 1
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:Storing notebook <Notebook(name='TEST', user='<User(name='sheng_wei')>', privacy='public', level='production'>
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 0 - 0
[2019-10-13 18:43:59 +0900] [2701] [ERROR] Error handling request /api/v1/jobs?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/job.py", line 21, in on_post
    resp.body = json.dumps(self.db.jobs.store(req.context['user'], req.params, self.session, self.scheduler))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/job.py", line 42, in store
    nb_sql = session.query(NotebookSQL).get(int(justid(notebookid)))
ValueError: invalid literal for int() with base 10: 'attachment.ipynb'
[2019-10-13 18:44:22 +0900] [2701] [ERROR] Error handling request /api/v1/jobs?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/job.py", line 21, in on_post
    resp.body = json.dumps(self.db.jobs.store(req.context['user'], req.params, self.session, self.scheduler))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/job.py", line 42, in store
    nb_sql = session.query(NotebookSQL).get(int(justid(notebookid)))
ValueError: invalid literal for int() with base 10: 'attachment.ipynb'
[2019-10-13 18:44:23 +0900] [2701] [ERROR] Error handling request /api/v1/jobs?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/job.py", line 21, in on_post
    resp.body = json.dumps(self.db.jobs.store(req.context['user'], req.params, self.session, self.scheduler))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/job.py", line 42, in store
    nb_sql = session.query(NotebookSQL).get(int(justid(notebookid)))
ValueError: invalid literal for int() with base 10: 'attachment.ipynb'
[2019-10-13 18:44:23 +0900] [2701] [ERROR] Error handling request /api/v1/jobs?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/job.py", line 21, in on_post
    resp.body = json.dumps(self.db.jobs.store(req.context['user'], req.params, self.session, self.scheduler))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/job.py", line 42, in store
    nb_sql = session.query(NotebookSQL).get(int(justid(notebookid)))
ValueError: invalid literal for int() with base 10: 'attachment.ipynb'
[2019-10-13 18:44:23 +0900] [2701] [ERROR] Error handling request /api/v1/jobs?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/job.py", line 21, in on_post
    resp.body = json.dumps(self.db.jobs.store(req.context['user'], req.params, self.session, self.scheduler))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/job.py", line 42, in store
    nb_sql = session.query(NotebookSQL).get(int(justid(notebookid)))
ValueError: invalid literal for int() with base 10: 'attachment.ipynb'
CRITICAL:root:Storing job <Job(name='TEST', user='<User(name='sheng_wei')>', notebook='<Notebook(name='TEST', user='<User(name='sheng_wei')>', privacy='public', level='production'>', start='2019-10-13 09:37:00', interval='minutely'>
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 1 - 1
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 1 - 1
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 1 - 1
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:detail : 1, result : <Job(name='TEST', user='<User(name='sheng_wei')>', notebook='<Notebook(name='TEST', user='<User(name='sheng_wei')>', privacy='public', level='production'>', start='2019-10-13 09:37:00', interval='minutely'>
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 1 - 1
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 1 - 1
CRITICAL:root:detail : 1, result : <Job(name='TEST', user='<User(name='sheng_wei')>', notebook='<Notebook(name='TEST', user='<User(name='sheng_wei')>', privacy='public', level='production'>', start='2019-10-13 09:37:00', interval='minutely'>
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 1 - 1
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 1 - 1
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:detail : 1, result : <Notebook(name='TEST', user='<User(name='sheng_wei')>', privacy='public', level='production'>
CRITICAL:root:Storing notebook <Notebook(name='BQ', user='<User(name='sheng_wei')>', privacy='public', level='production'>
CRITICAL:root:detail : 2, result : <Notebook(name='BQ', user='<User(name='sheng_wei')>', privacy='public', level='production'>
[2019-10-13 18:54:20 +0900] [2701] [ERROR] Error handling request /api/v1/jobs?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/job.py", line 21, in on_post
    resp.body = json.dumps(self.db.jobs.store(req.context['user'], req.params, self.session, self.scheduler))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/job.py", line 42, in store
    nb_sql = session.query(NotebookSQL).get(int(justid(notebookid)))
ValueError: invalid literal for int() with base 10: 'BQ'
[2019-10-13 18:54:35 +0900] [2701] [ERROR] Error handling request /api/v1/jobs?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/job.py", line 21, in on_post
    resp.body = json.dumps(self.db.jobs.store(req.context['user'], req.params, self.session, self.scheduler))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/job.py", line 42, in store
    nb_sql = session.query(NotebookSQL).get(int(justid(notebookid)))
ValueError: invalid literal for int() with base 10: 'BQ'
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 2 - 2
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 2 - 2
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 2 - 2
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 2 - 2
CRITICAL:root:detail : 2, result : <Notebook(name='BQ', user='<User(name='sheng_wei')>', privacy='public', level='production'>
CRITICAL:root:Storing job <Job(name='BQ', user='<User(name='sheng_wei')>', notebook='<Notebook(name='BQ', user='<User(name='sheng_wei')>', privacy='public', level='production'>', start='2019-10-13 09:51:00', interval='minutely'>
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 2 - 2
CRITICAL:root:detail : 2, result : <Job(name='BQ', user='<User(name='sheng_wei')>', notebook='<Notebook(name='BQ', user='<User(name='sheng_wei')>', privacy='public', level='production'>', start='2019-10-13 09:51:00', interval='minutely'>
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
[2019-10-13 18:59:11 +0900] [2696] [CRITICAL] WORKER TIMEOUT (pid:2701)
[2019-10-13 18:59:11 +0900] [2701] [INFO] Worker exiting (pid: 2701)
[2019-10-13 18:59:11 +0900] [2863] [INFO] Booting worker with pid: 2863
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 2 - 2
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 2 - 2
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:detail : 2, result : <Job(name='BQ', user='<User(name='sheng_wei')>', notebook='<Notebook(name='BQ', user='<User(name='sheng_wei')>', privacy='public', level='production'>', start='2019-10-13 09:51:00', interval='minutely'>
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 2 - 2
[2019-10-13 19:01:55 +0900] [2863] [ERROR] Error handling request /api/v1/reports?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/report.py", line 21, in on_post
    resp.body = json.dumps(self.db.reports.store(req.context['user'], req.params, self.session))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/report.py", line 50, in store
    jb_sql = session.query(JobSQL).get(int(justid(jobid)))
ValueError: invalid literal for int() with base 10: 'BQ'
[2019-10-13 19:01:57 +0900] [2863] [ERROR] Error handling request /api/v1/reports?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/report.py", line 21, in on_post
    resp.body = json.dumps(self.db.reports.store(req.context['user'], req.params, self.session))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/report.py", line 50, in store
    jb_sql = session.query(JobSQL).get(int(justid(jobid)))
ValueError: invalid literal for int() with base 10: 'BQ'
[2019-10-13 19:01:57 +0900] [2863] [ERROR] Error handling request /api/v1/reports?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/report.py", line 21, in on_post
    resp.body = json.dumps(self.db.reports.store(req.context['user'], req.params, self.session))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/report.py", line 50, in store
    jb_sql = session.query(JobSQL).get(int(justid(jobid)))
ValueError: invalid literal for int() with base 10: 'BQ'
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 2 - 2
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 2 - 2
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
^C
[2019-10-13 19:02:42 +0900] [2696] [INFO] Handling signal: int
[2019-10-13 19:02:42 +0900] [2863] [INFO] Worker exiting (pid: 2863)

The versions of dependencies are too low. There are too many bugs.

It seems that the maintenance of PaperBoy has been stopped.

Well. Maybe I can reuse some of the codes.

But I found a new Jupyter Dashboard used by PaperBoy.

Read More